Author: tomdz
Date: Sat Nov 26 11:48:23 2005
New Revision: 349139

URL: http://svn.apache.org/viewcvs?rev=349139&view=rev
Log:
Implemented DDLUTILS-45

Modified:
    db/ddlutils/trunk/src/java/org/apache/ddlutils/Platform.java
    
db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java

Modified: db/ddlutils/trunk/src/java/org/apache/ddlutils/Platform.java
URL: 
http://svn.apache.org/viewcvs/db/ddlutils/trunk/src/java/org/apache/ddlutils/Platform.java?rev=349139&r1=349138&r2=349139&view=diff
==============================================================================
--- db/ddlutils/trunk/src/java/org/apache/ddlutils/Platform.java (original)
+++ db/ddlutils/trunk/src/java/org/apache/ddlutils/Platform.java Sat Nov 26 
11:48:23 2005
@@ -199,6 +199,16 @@
     public void createTables(Connection connection, Database model, boolean 
dropTablesFirst, boolean continueOnError) throws DynaSqlException;

 

     /**

+     * Returns the SQL for creating the tables defined in the database model.

+     * 

+     * @param model           The database model

+     * @param dropTablesFirst Whether to drop the tables prior to creating 
them (anew)

+     * @param continueOnError Whether to continue executing the sql commands 
when an error occurred

+     * @return The SQL statements

+     */

+    public String createTablesSql(Database model, boolean dropTablesFirst, 
boolean continueOnError) throws DynaSqlException;

+

+    /**

      * Creates the tables defined in the database model.

      * 

      * @param model           The database model

@@ -220,6 +230,17 @@
     public void createTables(Connection connection, Database model, 
CreationParameters params, boolean dropTablesFirst, boolean continueOnError) 
throws DynaSqlException;

 

     /**

+     * Returns the SQL for creating the tables defined in the database model.

+     * 

+     * @param model           The database model

+     * @param params          The parameters used in the creation

+     * @param dropTablesFirst Whether to drop the tables prior to creating 
them (anew)

+     * @param continueOnError Whether to continue executing the sql commands 
when an error occurred

+     * @return The SQL statements

+     */

+    public String createTablesSql(Database model, CreationParameters params, 
boolean dropTablesFirst, boolean continueOnError) throws DynaSqlException;

+

+    /**

      * Alters the database schema so that it match the given model. Drops and 
table modifications will

      * not be made.

      *

@@ -240,6 +261,18 @@
     public void alterTables(Database desiredDb, boolean doDrops, boolean 
modifyColumns, boolean continueOnError) throws DynaSqlException;

 

     /**

+     * Returns the SQL for altering the database schema so that it match the 
given model.

+     *

+     * @param desiredDb       The desired database schema

+     * @param doDrops         Whether columns, tables and indexes should be 
dropped if not in the

+     *                        new schema

+     * @param modifyColumns   Whether columns should be altered for datatype, 
size as required

+     * @param continueOnError Whether to continue with the next sql statement 
when an error occurred

+     * @return The SQL statements

+     */

+    public String alterTablesSql(Database desiredDb, boolean doDrops, boolean 
modifyColumns, boolean continueOnError) throws DynaSqlException;

+

+    /**

      * Alters the database schema so that it match the given model. Drops and 
table modifications will

      * not be made.

      *

@@ -262,6 +295,19 @@
     public void alterTables(Database desiredDb, CreationParameters params, 
boolean doDrops, boolean modifyColumns, boolean continueOnError) throws 
DynaSqlException;

 

     /**

+     * Returns the SQL for altering the database schema so that it match the 
given model.

+     *

+     * @param desiredDb       The desired database schema

+     * @param params          The parameters used in the creation

+     * @param doDrops         Whether columns, tables and indexes should be 
dropped if not in the

+     *                        new schema

+     * @param modifyColumns   Whether columns should be altered for datatype, 
size as required

+     * @param continueOnError Whether to continue with the next sql statement 
when an error occurred

+     * @return The SQL statements

+     */

+    public String alterTablesSql(Database desiredDb, CreationParameters 
params, boolean doDrops, boolean modifyColumns, boolean continueOnError) throws 
DynaSqlException;

+

+    /**

      * Alters the database schema so that it match the given model. Drops and 
table modifications will

      * not be made.

      *

@@ -284,6 +330,19 @@
     public void alterTables(Connection connection, Database desiredDb, boolean 
doDrops, boolean modifyColumns, boolean continueOnError) throws 
DynaSqlException;

 

     /**

+     * Returns the SQL for altering the database schema so that it match the 
given model.

+     *

+     * @param connection      A connection to the existing database that shall 
be modified

+     * @param desiredDb       The desired database schema

+     * @param doDrops         Whether columns, tables and indexes should be 
dropped if not in the

+     *                        new schema

+     * @param modifyColumns   Whether columns should be altered for datatype, 
size as required

+     * @param continueOnError Whether to continue with the next sql statement 
when an error occurred

+     * @return The SQL statements

+     */

+    public String alterTablesSql(Connection connection, Database desiredDb, 
boolean doDrops, boolean modifyColumns, boolean continueOnError) throws 
DynaSqlException;

+

+    /**

      * Alters the database schema so that it match the given model. Drops and 
table modifications will

      * not be made.

      *

@@ -308,12 +367,35 @@
     public void alterTables(Connection connection, Database desiredDb, 
CreationParameters params, boolean doDrops, boolean modifyColumns, boolean 
continueOnError) throws DynaSqlException;

 

     /**

+     * Returns the SQL for altering the database schema so that it match the 
given model.

+     *

+     * @param connection      A connection to the existing database that shall 
be modified

+     * @param desiredDb       The desired database schema

+     * @param params          The parameters used in the creation

+     * @param doDrops         Whether columns, tables and indexes should be 
dropped if not in the

+     *                        new schema

+     * @param modifyColumns   Whether columns should be altered for datatype, 
size as required

+     * @param continueOnError Whether to continue with the next sql statement 
when an error occurred

+     * @return The SQL statements

+     */

+    public String alterTablesSql(Connection connection, Database desiredDb, 
CreationParameters params, boolean doDrops, boolean modifyColumns, boolean 
continueOnError) throws DynaSqlException;

+

+    /**

      * Drops the tables defined in the given database.

      * 

      * @param model           The database model

      * @param continueOnError Whether to continue executing the sql commands 
when an error occurred

      */

     public void dropTables(Database model, boolean continueOnError) throws 
DynaSqlException;

+

+    /**

+     * Returns the SQL for dropping the tables defined in the given database.

+     * 

+     * @param model           The database model

+     * @param continueOnError Whether to continue executing the sql commands 
when an error occurred

+     * @return The SQL statements

+     */

+    public String dropTablesSql(Database model, boolean continueOnError) 
throws DynaSqlException;

 

     /**

      * Drops the tables defined in the given database.


Modified: 
db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java
URL: 
http://svn.apache.org/viewcvs/db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java?rev=349139&r1=349138&r2=349139&view=diff
==============================================================================
--- 
db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java 
(original)
+++ 
db/ddlutils/trunk/src/java/org/apache/ddlutils/platform/PlatformImplBase.java 
Sat Nov 26 11:48:23 2005
@@ -269,6 +269,16 @@
      */

     public void createTables(Connection connection, Database model, boolean 
dropTablesFirst, boolean continueOnError) throws DynaSqlException

     {

+        String sql = createTablesSql(model, dropTablesFirst, continueOnError);

+

+        evaluateBatch(connection, sql, continueOnError);

+    }

+

+    /**

+     * [EMAIL PROTECTED]

+     */

+    public String createTablesSql(Database model, boolean dropTablesFirst, 
boolean continueOnError) throws DynaSqlException

+    {

         String sql = null;

 

         try

@@ -283,7 +293,7 @@
         {

             // won't happen because we're using a string writer

         }

-        evaluateBatch(connection, sql, continueOnError);

+        return sql;

     }

 

     /**

@@ -308,6 +318,16 @@
      */

     public void createTables(Connection connection, Database model, 
CreationParameters params, boolean dropTablesFirst, boolean continueOnError) 
throws DynaSqlException

     {

+        String sql = createTablesSql(model, params, dropTablesFirst, 
continueOnError);

+

+        evaluateBatch(connection, sql, continueOnError);

+    }

+

+    /**

+     * [EMAIL PROTECTED]

+     */

+    public String createTablesSql(Database model, CreationParameters params, 
boolean dropTablesFirst, boolean continueOnError) throws DynaSqlException

+    {

         String sql = null;

 

         try

@@ -322,7 +342,7 @@
         {

             // won't happen because we're using a string writer

         }

-        evaluateBatch(connection, sql, continueOnError);

+        return sql;

     }

 

     /**

@@ -353,6 +373,23 @@
     /**

      * [EMAIL PROTECTED]

      */

+    public String alterTablesSql(Database desiredDb, boolean doDrops, boolean 
modifyColumns, boolean continueOnError) throws DynaSqlException

+    {

+        Connection connection = borrowConnection();

+

+        try

+        {

+            return alterTablesSql(connection, desiredDb, doDrops, 
modifyColumns, continueOnError);

+        }

+        finally

+        {

+            returnConnection(connection);

+        }

+    }

+

+    /**

+     * [EMAIL PROTECTED]

+     */

     public void alterTables(Database desiredDb, CreationParameters params, 
boolean continueOnError) throws DynaSqlException

     {

         alterTables(desiredDb, params, false, false, continueOnError);

@@ -378,6 +415,23 @@
     /**

      * [EMAIL PROTECTED]

      */

+    public String alterTablesSql(Database desiredDb, CreationParameters 
params, boolean doDrops, boolean modifyColumns, boolean continueOnError) throws 
DynaSqlException

+    {

+        Connection connection = borrowConnection();

+

+        try

+        {

+            return alterTablesSql(connection, desiredDb, params, doDrops, 
modifyColumns, continueOnError);

+        }

+        finally

+        {

+            returnConnection(connection);

+        }

+    }

+

+    /**

+     * [EMAIL PROTECTED]

+     */

     public void alterTables(Connection connection, Database desiredDb, boolean 
continueOnError) throws DynaSqlException

     {

         alterTables(connection, desiredDb, false, false, continueOnError);

@@ -388,6 +442,16 @@
      */

     public void alterTables(Connection connection, Database desiredModel, 
boolean doDrops, boolean modifyColumns, boolean continueOnError) throws 
DynaSqlException

     {

+        String sql = alterTablesSql(connection, desiredModel, doDrops, 
modifyColumns, continueOnError);

+

+        evaluateBatch(connection, sql, continueOnError);

+    }

+

+    /**

+     * [EMAIL PROTECTED]

+     */

+    public String alterTablesSql(Connection connection, Database desiredModel, 
boolean doDrops, boolean modifyColumns, boolean continueOnError) throws 
DynaSqlException

+    {

         String   sql          = null;

         Database currentModel = readModelFromDatabase(connection);

 

@@ -403,7 +467,7 @@
         {

             // won't happen because we're using a string writer

         }

-        evaluateBatch(connection, sql, continueOnError);

+        return sql;

     }

 

     /**

@@ -419,6 +483,16 @@
      */

     public void alterTables(Connection connection, Database desiredModel, 
CreationParameters params, boolean doDrops, boolean modifyColumns, boolean 
continueOnError) throws DynaSqlException

     {

+        String sql = alterTablesSql(connection, desiredModel, params, doDrops, 
modifyColumns, continueOnError);

+

+        evaluateBatch(connection, sql, continueOnError);

+    }

+

+    /**

+     * [EMAIL PROTECTED]

+     */

+    public String alterTablesSql(Connection connection, Database desiredModel, 
CreationParameters params, boolean doDrops, boolean modifyColumns, boolean 
continueOnError) throws DynaSqlException

+    {

         String   sql          = null;

         Database currentModel = readModelFromDatabase(connection);

 

@@ -434,7 +508,7 @@
         {

             // won't happen because we're using a string writer

         }

-        evaluateBatch(connection, sql, continueOnError);

+        return sql;

     }

 

     /**

@@ -459,6 +533,16 @@
      */

     public void dropTables(Connection connection, Database model, boolean 
continueOnError) throws DynaSqlException 

     {

+        String sql = dropTablesSql(model, continueOnError);

+

+        evaluateBatch(connection, sql, continueOnError);

+    }

+

+    /**

+     * [EMAIL PROTECTED]

+     */

+    public String dropTablesSql(Database model, boolean continueOnError) 
throws DynaSqlException 

+    {

         String sql = null;

 

         try

@@ -473,7 +557,7 @@
         {

             // won't happen because we're using a string writer

         }

-        evaluateBatch(connection, sql, continueOnError);

+        return sql;

     }

 

     /**



Reply via email to