(no commit message)
[utils] / test / toplink-essentials / src / main / java / org / wamblee / support / persistence / toplink / ToplinkJpaCustomizer.java
index f9be8e4771939607c26806e1680601e3eadde277..da40441cd3de35cb2cef7818291c4e8975e24334 100644 (file)
  */ 
 package org.wamblee.support.persistence.toplink;
 
-import org.dbunit.dataset.filter.ITableFilterSimple;
+import java.io.File;
+import java.util.Map;
 
+import org.dbunit.dataset.filter.ITableFilterSimple;
+import org.wamblee.io.FileSystemUtils;
 import org.wamblee.support.persistence.JpaCustomizer;
 import org.wamblee.support.persistence.PersistenceUnitDescription;
 
-import java.util.Map;
-
 /**
  * 
  * @author $author$
@@ -38,15 +39,19 @@ public class ToplinkJpaCustomizer implements JpaCustomizer {
     @Override
     public void customize(PersistenceUnitDescription aPersistenceUnit,
         Map<String, String> aJpaProperties) {
-        // Hack to make JNDI lookup of the datasource work with toplink
-        aJpaProperties.put("toplink.session.customizer",
-            JndiSessionCustomizer.class.getName());
+
+        // Custom datasource properties.
+        aJpaProperties.put("toplink.jdbc.url", aJpaProperties.get("javax.persistence.jdbc.url"));
+        aJpaProperties.put("toplink.jdbc.user", aJpaProperties.get("javax.persistence.jdbc.user"));
+        aJpaProperties.put("toplink.jdbc.password", aJpaProperties.get("javax.persistence.jdbc.password"));
 
         // DDL generation for toplink
-        aJpaProperties.put("toplink.ddl-generation", "create-tables");
+        aJpaProperties.put("toplink.ddl-generation", "drop-and-create-tables");
         
-        // Use JTA transaction type
-        aJpaProperties.put("javax.persistence.transactionType", "JTA");
+        // DDL generation
+        FileSystemUtils.createDir(new File("target/sql"));
+        aJpaProperties.put("toplink.create-ddl-jdbc-file-name", "target/sql/create-schema.sql");
+        aJpaProperties.put("toplink.drop-ddl-jdbc-file-name", "target/sql/drop-schema.sql");
     }
 
     @Override