removing @Override for compatibility with java 1.6
[cdmlib.git] / cdmlib-persistence / src / main / java / eu / etaxonomy / cdm / database / types / HSqlDbDatabaseType.java
index 1dcdaa46777b986b846eac9df1cacdfcb9839e18..2c531a9d48c5eb3d0123a126ad7d5466f73e0419 100644 (file)
@@ -1,10 +1,20 @@
 /**\r
- * \r
- */\r
+* Copyright (C) 2007 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+\r
 package eu.etaxonomy.cdm.database.types;\r
 \r
-import org.springframework.jdbc.datasource.DriverManagerDataSource;\r
+import javax.sql.DataSource;\r
 \r
+import org.hibernate.dialect.Dialect;\r
+import org.hibernate.dialect.HSQLCorrectedDialect;\r
+\r
+import eu.etaxonomy.cdm.database.ICdmDataSource;\r
 import eu.etaxonomy.cdm.database.LocalHsqldb;\r
 \r
 \r
@@ -27,12 +37,33 @@ public class HSqlDbDatabaseType extends DatabaseTypeBase {
     private int defaultPort = 9001;\r
     \r
     //hibernate dialect\r
-    private String hibernateDialect = "HSQLDialect";\r
+    private Dialect hibernateDialect = new HSQLCorrectedDialect();\r
+    \r
+    //init method\r
+    private String initMethod = "init";\r
     \r
+    //destroy method\r
+    private String destroyMethod = "destroy";\r
     \r
     //connection String\r
-       public String getConnectionString(String server, String database, int port){\r
-        return urlString + server + ":" + port + "/" + database;\r
+       public String getConnectionString(ICdmDataSource ds, int port){\r
+        return urlString + ds.getServer() + ":" + port + dbSeparator + ds.getDatabase();\r
+    }\r
+       \r
+       private static String dbSeparator = "/";\r
+       \r
+    /* (non-Javadoc)\r
+     * @see eu.etaxonomy.cdm.database.types.DatabaseTypeBase#getServerNameByConnectionString(java.lang.String)\r
+     */\r
+    public String getDatabaseNameByConnectionString(String connectionString){\r
+       String result;\r
+       result = getDatabasePartOfConnectionString(connectionString, dbSeparator);\r
+       //TODO\r
+//     int posParams = result.indexOf("?");\r
+//     if (posParams != -1){\r
+//             result = result.substring(0, posParams);\r
+//     }\r
+       return result;\r
     }\r
        \r
     \r
@@ -41,11 +72,26 @@ public class HSqlDbDatabaseType extends DatabaseTypeBase {
        }\r
 \r
        @Override\r
-       public Class<? extends DriverManagerDataSource> getDriverManagerDataSourceClass() {\r
+       public Class<? extends DataSource> getDataSourceClass() {\r
                return LocalHsqldb.class;\r
        }\r
 \r
-\r
+       /* (non-Javadoc)\r
+        * @see eu.etaxonomy.cdm.database.types.IDatabaseType#getInitMethod()\r
+        */\r
+       @Override\r
+       public String getInitMethod() {\r
+               return initMethod;\r
+       }\r
+       \r
+       \r
+       /* (non-Javadoc)\r
+        * @see eu.etaxonomy.cdm.database.types.IDatabaseType#getDestroyMethod()\r
+        */\r
+       @Override\r
+       public String getDestroyMethod() {\r
+               return destroyMethod;\r
+       }\r
 \r
 \r
 }\r