You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2008/01/08 14:05:53 UTC

svn commit: r609963 - in /cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util: AdapterMapping.java DbAdapterInfo.java

Author: aadamchik
Date: Tue Jan  8 05:05:52 2008
New Revision: 609963

URL: http://svn.apache.org/viewvc?rev=609963&view=rev
Log:
CAY-884 Add support for H2 Database
(modeler update)

Modified:
    cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/AdapterMapping.java
    cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAdapterInfo.java

Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/AdapterMapping.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/AdapterMapping.java?rev=609963&r1=609962&r2=609963&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/AdapterMapping.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/AdapterMapping.java Tue Jan  8 05:05:52 2008
@@ -17,7 +17,6 @@
  *  under the License.
  ****************************************************************/
 
-
 package org.apache.cayenne.modeler.util;
 
 import java.util.HashMap;
@@ -26,6 +25,7 @@
 import org.apache.cayenne.dba.db2.DB2Adapter;
 import org.apache.cayenne.dba.derby.DerbyAdapter;
 import org.apache.cayenne.dba.frontbase.FrontBaseAdapter;
+import org.apache.cayenne.dba.h2.H2Adapter;
 import org.apache.cayenne.dba.hsqldb.HSQLDBAdapter;
 import org.apache.cayenne.dba.ingres.IngresAdapter;
 import org.apache.cayenne.dba.mysql.MySQLAdapter;
@@ -43,16 +43,16 @@
  */
 public class AdapterMapping {
 
-    protected Map adapterToJDBCDriverMap;
-    protected Map adapterToJDBCURLMap;
-    protected Map jdbcDriverToAdapterMap;
-    protected Map eofPluginToAdapterMap;
+    protected Map<String, String> adapterToJDBCDriverMap;
+    protected Map<String, String> adapterToJDBCURLMap;
+    protected Map<String, String> jdbcDriverToAdapterMap;
+    protected Map<String, String> eofPluginToAdapterMap;
 
     public AdapterMapping() {
-        this.adapterToJDBCDriverMap = new HashMap();
-        this.adapterToJDBCURLMap = new HashMap();
-        this.jdbcDriverToAdapterMap = new HashMap();
-        this.eofPluginToAdapterMap = new HashMap();
+        this.adapterToJDBCDriverMap = new HashMap<String, String>();
+        this.adapterToJDBCURLMap = new HashMap<String, String>();
+        this.jdbcDriverToAdapterMap = new HashMap<String, String>();
+        this.eofPluginToAdapterMap = new HashMap<String, String>();
 
         initDefaults();
     }
@@ -70,6 +70,7 @@
                 .getName());
         jdbcDriverToAdapterMap
                 .put("org.hsqldb.jdbcDriver", HSQLDBAdapter.class.getName());
+        jdbcDriverToAdapterMap.put("org.h2.Driver", H2Adapter.class.getName());
         jdbcDriverToAdapterMap.put("org.postgresql.Driver", PostgresAdapter.class
                 .getName());
         jdbcDriverToAdapterMap.put("com.openbase.jdbc.ObDriver", OpenBaseAdapter.class
@@ -103,6 +104,9 @@
                 HSQLDBAdapter.class.getName(),
                 "jdbc:hsqldb:hsql://localhost/database");
         adapterToJDBCURLMap.put(
+                H2Adapter.class.getName(),
+                "jdbc:h2:mem:database;MVCC=TRUE");
+        adapterToJDBCURLMap.put(
                 PostgresAdapter.class.getName(),
                 "jdbc:postgresql://localhost:5432/database");
         adapterToJDBCURLMap.put(
@@ -139,6 +143,7 @@
                 "com.ibm.db2.jcc.DB2Driver");
         adapterToJDBCDriverMap
                 .put(HSQLDBAdapter.class.getName(), "org.hsqldb.jdbcDriver");
+        adapterToJDBCDriverMap.put(H2Adapter.class.getName(), "org.h2.Driver");
         adapterToJDBCDriverMap.put(
                 PostgresAdapter.class.getName(),
                 "org.postgresql.Driver");
@@ -184,19 +189,19 @@
     }
 
     public String jdbcURLForAdapter(String adapterClass) {
-        return (String) adapterToJDBCURLMap.get(adapterClass);
+        return adapterToJDBCURLMap.get(adapterClass);
     }
 
     public String jdbcDriverForAdapter(String adapterClass) {
-        return (String) adapterToJDBCDriverMap.get(adapterClass);
+        return adapterToJDBCDriverMap.get(adapterClass);
     }
 
     public String adapterForJDBCDriver(String driverClass) {
-        return (String) jdbcDriverToAdapterMap.get(driverClass);
+        return jdbcDriverToAdapterMap.get(driverClass);
     }
 
     public String adapterForEOFPlugin(String eofPlugin) {
-        return (String) eofPluginToAdapterMap.get(eofPlugin);
+        return eofPluginToAdapterMap.get(eofPlugin);
     }
 
     public String adapterForEOFPluginOrDriver(String eofPlugin, String jdbcDriver) {

Modified: cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAdapterInfo.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAdapterInfo.java?rev=609963&r1=609962&r2=609963&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAdapterInfo.java (original)
+++ cayenne/main/trunk/framework/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/util/DbAdapterInfo.java Tue Jan  8 05:05:52 2008
@@ -32,6 +32,7 @@
 import org.apache.cayenne.dba.db2.DB2Adapter;
 import org.apache.cayenne.dba.derby.DerbyAdapter;
 import org.apache.cayenne.dba.frontbase.FrontBaseAdapter;
+import org.apache.cayenne.dba.h2.H2Adapter;
 import org.apache.cayenne.dba.hsqldb.HSQLDBAdapter;
 import org.apache.cayenne.dba.ingres.IngresAdapter;
 import org.apache.cayenne.dba.mysql.MySQLAdapter;
@@ -47,18 +48,18 @@
  */
 public final class DbAdapterInfo {
 
-    private static final Map DEFAULT_ADAPTER_LABELS = new TreeMap();
+    private static final Map<String, String> DEFAULT_ADAPTER_LABELS = new TreeMap<String, String>();
     private static final String[] standardAdapters = new String[] {
-            JdbcAdapter.class.getName(), OracleAdapter.class.getName(),
-            MySQLAdapter.class.getName(), SybaseAdapter.class.getName(),
-            PostgresAdapter.class.getName(), HSQLDBAdapter.class.getName(),
-            DB2Adapter.class.getName(), SQLServerAdapter.class.getName(),
-            FrontBaseAdapter.class.getName(), OpenBaseAdapter.class.getName(),
-            DerbyAdapter.class.getName(), IngresAdapter.class.getName(),
-            SQLiteAdapter.class.getName()
+            JdbcAdapter.class.getName(), MySQLAdapter.class.getName(),
+            OracleAdapter.class.getName(), SybaseAdapter.class.getName(),
+            PostgresAdapter.class.getName(), H2Adapter.class.getName(),
+            HSQLDBAdapter.class.getName(), DB2Adapter.class.getName(),
+            SQLServerAdapter.class.getName(), FrontBaseAdapter.class.getName(),
+            OpenBaseAdapter.class.getName(), DerbyAdapter.class.getName(),
+            IngresAdapter.class.getName(), SQLiteAdapter.class.getName()
     };
 
-    private static final Map IMMUTABLE_LABELS = Collections
+    private static final Map<String, String> IMMUTABLE_LABELS = Collections
             .unmodifiableMap(DEFAULT_ADAPTER_LABELS);
 
     static {
@@ -68,6 +69,7 @@
         DEFAULT_ADAPTER_LABELS.put(SybaseAdapter.class.getName(), "Sybase Adapter");
         DEFAULT_ADAPTER_LABELS.put(PostgresAdapter.class.getName(), "PostgreSQL Adapter");
         DEFAULT_ADAPTER_LABELS.put(HSQLDBAdapter.class.getName(), "HypersonicDB Adapter");
+        DEFAULT_ADAPTER_LABELS.put(H2Adapter.class.getName(), " H2 Database Adapter");
         DEFAULT_ADAPTER_LABELS.put(DB2Adapter.class.getName(), "DB2 Adapter");
         DEFAULT_ADAPTER_LABELS.put(
                 SQLServerAdapter.class.getName(),
@@ -109,7 +111,7 @@
                 boolean arg4) {
 
             if (object instanceof Class) {
-                object = ((Class) object).getName();
+                object = ((Class<?>) object).getName();
             }
 
             Object label = adapterLabels.get(object);