db-ddlutils-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From to...@apache.org
Subject svn commit: r239736 - in /db/ddlutils/trunk/src/java/org/apache/ddlutils/task: WriteSchemaSqlToFileCommand.java WriteSchemaToDatabaseCommand.java
Date Wed, 24 Aug 2005 19:24:31 GMT
Author: tomdz
Date: Wed Aug 24 12:24:26 2005
New Revision: 239736

URL: http://svn.apache.org/viewcvs?rev=239736&view=rev
Log:
Added ability to specify whether to drop tables first, to the writeSchemaToDatabase and writeSchemaSqlToFile
subtasks as proposed by Christoffer Hammarström (DDLUTILS-5)

Modified:
    db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaSqlToFileCommand.java
    db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaToDatabaseCommand.java

Modified: db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaSqlToFileCommand.java
URL: http://svn.apache.org/viewcvs/db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaSqlToFileCommand.java?rev=239736&r1=239735&r2=239736&view=diff
==============================================================================
--- db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaSqlToFileCommand.java (original)
+++ db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaSqlToFileCommand.java Wed
Aug 24 12:24:26 2005
@@ -37,6 +37,8 @@
     private File _outputFile;
     /** Whether to alter or re-set the database if it already exists */
     private boolean _alterDb = true;
+    /** Whether to drop tables and the associated constraints first */
+    private boolean _dropTablesFirst = true;
 
     /**
      * Sets the file to output the sql to.
@@ -68,6 +70,26 @@
         _alterDb = alterTheDb;
     }
 
+    /**
+     * Determines whether to drop tables and the associated constraints first.
+     * 
+     * @return <code>true</code> if a drop shall be performed first
+     */
+    protected boolean isDropTablesFirst()
+    {
+        return _dropTablesFirst;
+    }
+
+    /**
+     * Specifies whether to drop tables and the associated constraints first.
+     * 
+     * @param doDrops <code>true</code> if a drop shall be performed first
+     */
+    public void setDropTablesFirst(boolean doDrops)
+    {
+        _dropTablesFirst = doDrops;
+    }
+
     /* (non-Javadoc)
      * @see org.apache.ddlutils.task.Command#execute(org.apache.tools.ant.Task, org.apache.ddlutils.model.Database)
      */
@@ -100,11 +122,11 @@
 
                 Database currentModel = new JdbcModelReader(connection).getDatabase();
 
-                platform.getSqlBuilder().alterDatabase(currentModel, model, true, true);
+                platform.getSqlBuilder().alterDatabase(currentModel, model, _dropTablesFirst,
true);
             }
             else
             {
-                platform.getSqlBuilder().createTables(model);
+                platform.getSqlBuilder().createTables(model, _dropTablesFirst);
             }
             writer.close();
             task.log("Written SQL to "+_outputFile.getAbsolutePath(), Project.MSG_INFO);

Modified: db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaToDatabaseCommand.java
URL: http://svn.apache.org/viewcvs/db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaToDatabaseCommand.java?rev=239736&r1=239735&r2=239736&view=diff
==============================================================================
--- db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaToDatabaseCommand.java
(original)
+++ db/ddlutils/trunk/src/java/org/apache/ddlutils/task/WriteSchemaToDatabaseCommand.java
Wed Aug 24 12:24:26 2005
@@ -29,6 +29,8 @@
 {
     /** Whether to alter or re-set the database if it already exists */
     private boolean _alterDb = true;
+    /** Whether to drop tables and the associated constraints first */
+    private boolean _dropTablesFirst = true;
 
     /**
      * Determines whether to alter the database if it already exists, or re-set it.
@@ -50,6 +52,26 @@
         _alterDb = alterTheDb;
     }
 
+    /**
+     * Determines whether to drop tables and the associated constraints first.
+     * 
+     * @return <code>true</code> if a drop shall be performed first
+     */
+    protected boolean isDropTablesFirst()
+    {
+        return _dropTablesFirst;
+    }
+
+    /**
+     * Specifies whether to drop tables and the associated constraints first.
+     * 
+     * @param doDrops <code>true</code> if a drop shall be performed first
+     */
+    public void setDropTablesFirst(boolean doDrops)
+    {
+        _dropTablesFirst = doDrops;
+    }
+
     /* (non-Javadoc)
      * @see org.apache.ddlutils.task.Command#execute(org.apache.tools.ant.Task, org.apache.ddlutils.model.Database)
      */
@@ -66,11 +88,11 @@
         {
             if (isAlterDatabase())
             {
-                platform.alterTables(model, true, true, true);
+                platform.alterTables(model, _dropTablesFirst, true, true);
             }
             else
             {
-                platform.createTables(model, true, true);
+                platform.createTables(model, _dropTablesFirst, true);
             }
 
             task.log("Written schema to database", Project.MSG_INFO);



Mime
View raw message