[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