[exo-jcr-commits] exo-jcr SVN: r5103 - in jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl: util/jdbc and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Wed Oct 26 10:05:46 EDT 2011


Author: tolusha
Date: 2011-10-26 10:05:46 -0400 (Wed, 26 Oct 2011)
New Revision: 5103

Modified:
   jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleanService.java
   jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleaner.java
   jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/DBInitializerHelper.java
Log:
EXOJCR-1585: adopt test for Oracle DB

Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleanService.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleanService.java	2011-10-26 13:43:39 UTC (rev 5102)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleanService.java	2011-10-26 14:05:46 UTC (rev 5103)
@@ -352,7 +352,7 @@
          addScript.add("ALTER TABLE JCR_" + multiDb + "VALUE ADD CONSTRAINT JCR_FK_" + multiDb
             + "VALUE_PROPERTY FOREIGN KEY(PROPERTY_ID) REFERENCES JCR_" + multiDb + "ITEM(ID)");
 
-         addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT", isMultiDB, dialect));
+         addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT ", isMultiDB, dialect));
          addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT_NAME", isMultiDB,
             dialect));
          addScript
@@ -364,10 +364,6 @@
          return addScript;
       }
 
-      constraintName = validateConstraintName("JCR_FK_" + multiDb + "ITEM_PARENT", dialect);
-      constraint = "CONSTRAINT " + constraintName + " FOREIGN KEY(PARENT_ID) REFERENCES JCR_" + multiDb + "ITEM(ID)";
-      addScript.add("ALTER TABLE JCR_" + multiDb + "ITEM ADD " + constraint);
-
       if (dialect.equals(DBConstants.DB_DIALECT_MYSQL) || dialect.equals(DBConstants.DB_DIALECT_MYSQL))
       {
          constraintName = validateConstraintName("JCR_FK_" + multiDb + "VALUE_PROPERTY", dialect);
@@ -391,7 +387,6 @@
             "CONSTRAINT " + constraintName + " FOREIGN KEY(PROPERTY_ID) REFERENCES JCR_" + multiDb + "ITEM(ID)";
          addScript.add("ALTER TABLE JCR_" + multiDb + "VALUE ADD " + constraint);
 
-
          constraintName = validateConstraintName("JCR_PK_" + multiDb + "REF", dialect);
          constraint = "CONSTRAINT " + constraintName + " PRIMARY KEY(NODE_ID, PROPERTY_ID, ORDER_NUM)";
          addScript.add("ALTER TABLE JCR_" + multiDb + "REF ADD " + constraint);
@@ -401,7 +396,7 @@
          addScript.add("ALTER TABLE JCR_" + multiDb + "CONTAINER ADD " + constraint);
 
          addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT_FK", isMultiDB, dialect));
-         addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT", isMultiDB, dialect));
+         addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT ", isMultiDB, dialect));
          addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT_NAME", isMultiDB, dialect));
          addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "ITEM_PARENT_ID", isMultiDB, dialect));
          addScript
@@ -409,6 +404,10 @@
          addScript.add(DBInitializerHelper.getObjectScript("JCR_IDX_" + multiDb + "REF_PROPERTY", isMultiDB, dialect));
       }
 
+      constraintName = validateConstraintName("JCR_FK_" + multiDb + "ITEM_PARENT", dialect);
+      constraint = "CONSTRAINT " + constraintName + " FOREIGN KEY(PARENT_ID) REFERENCES JCR_" + multiDb + "ITEM(ID)";
+      addScript.add("ALTER TABLE JCR_" + multiDb + "ITEM ADD " + constraint);
+
       return addScript;
    }
 

Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleaner.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleaner.java	2011-10-26 13:43:39 UTC (rev 5102)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/clean/rdbms/DBCleaner.java	2011-10-26 14:05:46 UTC (rev 5103)
@@ -153,7 +153,7 @@
     */
    public void executeCleanScripts() throws SQLException
    {
-      executeScripts(cleanScripts, false);
+      executeScripts(cleanScripts);
 
       if (dbCleanHelper != null)
       {
@@ -169,7 +169,7 @@
     */
    public void executeRollbackScripts() throws SQLException
    {
-      executeScripts(rollbackScripts, true);
+      executeScripts(rollbackScripts);
    }
 
    /**
@@ -180,7 +180,7 @@
     */
    public void executeCommitScripts() throws SQLException
    {
-      executeScripts(commitScripts, false);
+      executeScripts(commitScripts);
    }
 
    /**
@@ -193,7 +193,7 @@
     * @throws SQLException
     *          if any exception occurred
     */
-   protected void executeScripts(List<String> scripts, boolean isSkipSQLExceprion) throws SQLException
+   protected void executeScripts(List<String> scripts) throws SQLException
    {
       SecurityManager security = System.getSecurityManager();
       if (security != null)
@@ -213,23 +213,8 @@
                {
                   LOG.debug("Execute script: \n[" + sql + "]");
                }
-               
-               try
-               {
-                  executeQuery(st, sql);
-               } 
-               catch (SQLException e)
-               {
-                  if (isSkipSQLExceprion)
-                  {
-                     LOG.warn("Execute script fail: \n[" + sql + "]");
-                     continue;
-                  }
-                  else
-                  {
-                     throw e;
-                  }
-               }
+
+               executeQuery(st, sql);
             }
          }
       }

Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/DBInitializerHelper.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/DBInitializerHelper.java	2011-10-26 13:43:39 UTC (rev 5102)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/DBInitializerHelper.java	2011-10-26 14:05:46 UTC (rev 5103)
@@ -288,15 +288,27 @@
          throw new RepositoryConfigurationException("Can not read script file " + scriptsPath, e);
       }
 
+      String sql = null;
       for (String query : DBInitializerHelper.scripts(script))
       {
          String q = DBInitializerHelper.cleanWhitespaces(query);
          if (q.contains(objectName))
          {
-            return q;
+            if (sql != null)
+            {
+               throw new RepositoryConfigurationException("Can't find unique script for object creation. Object name: "
+                  + objectName);
+            }
+
+            sql = q;
          }
       }
 
-      return null;
+      if (sql != null)
+      {
+         return sql;
+      }
+
+      throw new RepositoryConfigurationException("Script for object creation is not found. Object name: " + objectName);
    }
 }



More information about the exo-jcr-commits mailing list