[exo-jcr-commits] exo-jcr SVN: r3664 - in jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl: core/lock/infinispan and 2 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Tue Dec 14 06:58:43 EST 2010
Author: tolusha
Date: 2010-12-14 06:58:43 -0500 (Tue, 14 Dec 2010)
New Revision: 3664
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/cacheable/AbstractCacheableLockManager.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/jbosscache/CacheableLockManagerImpl.java
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/cleaner/WorkspaceDBCleaner.java
Log:
EXOJCR-939: get LockTableName from workspace configuration
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/cacheable/AbstractCacheableLockManager.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/cacheable/AbstractCacheableLockManager.java 2010-12-14 09:15:53 UTC (rev 3663)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/cacheable/AbstractCacheableLockManager.java 2010-12-14 11:58:43 UTC (rev 3664)
@@ -41,6 +41,8 @@
import org.exoplatform.services.jcr.impl.core.lock.LockRemover;
import org.exoplatform.services.jcr.impl.core.lock.LockRemoverHolder;
import org.exoplatform.services.jcr.impl.core.lock.SessionLockManager;
+import org.exoplatform.services.jcr.impl.core.lock.infinispan.ISPNCacheableLockManagerImpl;
+import org.exoplatform.services.jcr.impl.core.lock.jbosscache.CacheableLockManagerImpl;
import org.exoplatform.services.jcr.impl.dataflow.TransientItemData;
import org.exoplatform.services.jcr.impl.dataflow.TransientPropertyData;
import org.exoplatform.services.jcr.impl.dataflow.persistent.WorkspacePersistentDataManager;
@@ -130,8 +132,6 @@
protected LockActionNonTxAware<List<LockData>, Object> getLockList;
- public static final String JDBC_TABLE_NAME_SUFFIX = "jdbc.table.name";
-
/**
* Constructor.
*
@@ -787,19 +787,36 @@
/**
* Return table name for lock data.
*/
- public static String getLockTableName(LockManagerEntry lockManagerEntry)
+ public static List<String> getLockTableNames(LockManagerEntry lockManagerEntry)
{
+ List<String> tableNames = new ArrayList<String>();
+
if (lockManagerEntry != null)
{
for (SimpleParameterEntry entry : lockManagerEntry.getParameters())
{
- if (entry.getName().contains(AbstractCacheableLockManager.JDBC_TABLE_NAME_SUFFIX))
+ if (entry.getName().equals(CacheableLockManagerImpl.JBOSSCACHE_JDBC_TABLE_NAME))
{
- return entry.getValue();
+ tableNames.add(entry.getValue());
+ tableNames.add(entry.getValue() + "_D");
+
+ return tableNames;
}
+ else if (entry.getName().equals(ISPNCacheableLockManagerImpl.INFINISPAN_JDBC_TABLE_NAME))
+ {
+ throw new RuntimeException("Not supported");
+ }
}
}
- return null;
+ return tableNames;
}
+
+ /**
+ * Return select data script.
+ */
+ public static String getSelectScript(String tableName)
+ {
+ return "select * from " + tableName;
+ }
}
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java 2010-12-14 09:15:53 UTC (rev 3663)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java 2010-12-14 11:58:43 UTC (rev 3664)
@@ -75,7 +75,7 @@
public static final String INFINISPAN_JDBC_CL_ID_COLUMN = "infinispan-cl-cache.jdbc.id.type";
- public static final String INFINISPAN_JDBC_TABLE_NAME = "infinispan-cl-cache." + JDBC_TABLE_NAME_SUFFIX;
+ public static final String INFINISPAN_JDBC_TABLE_NAME = "infinispan-cl-cache.jdbc.table.name";
public static final String INFINISPAN_JDBC_CL_AUTO = "auto";
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/jbosscache/CacheableLockManagerImpl.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/jbosscache/CacheableLockManagerImpl.java 2010-12-14 09:15:53 UTC (rev 3663)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/jbosscache/CacheableLockManagerImpl.java 2010-12-14 11:58:43 UTC (rev 3664)
@@ -82,7 +82,7 @@
public static final String JBOSSCACHE_JDBC_CL_FQN_COLUMN = "jbosscache-cl-cache.jdbc.fqn.type";
- public static final String JBOSSCACHE_JDBC_TABLE_NAME = "jbosscache-cl-cache." + JDBC_TABLE_NAME_SUFFIX;
+ public static final String JBOSSCACHE_JDBC_TABLE_NAME = "jbosscache-cl-cache.jdbc.table.name";
/**
* Indicate whether the JBoss Cache instance used can be shared with other caches
Modified: jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/cleaner/WorkspaceDBCleaner.java
===================================================================
--- jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/cleaner/WorkspaceDBCleaner.java 2010-12-14 09:15:53 UTC (rev 3663)
+++ jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/util/jdbc/cleaner/WorkspaceDBCleaner.java 2010-12-14 11:58:43 UTC (rev 3664)
@@ -17,6 +17,7 @@
package org.exoplatform.services.jcr.impl.util.jdbc.cleaner;
import org.exoplatform.commons.utils.SecurityHelper;
+import org.exoplatform.services.jcr.config.LockManagerEntry;
import org.exoplatform.services.jcr.config.WorkspaceEntry;
import org.exoplatform.services.jcr.core.security.JCRRuntimePermissions;
import org.exoplatform.services.jcr.impl.core.lock.cacheable.AbstractCacheableLockManager;
@@ -81,11 +82,13 @@
this.connection = connection;
this.containerName = wsEntry.getName();
- String lockTableName = AbstractCacheableLockManager.getLockTableName(wsEntry.getLockManager());
- if (lockTableName != null)
+ LockManagerEntry lockEntry = wsEntry.getLockManager();
+ if (lockEntry != null)
{
- commonDBCleanScripts.add(lockTableName);
- commonDBCleanScripts.add(lockTableName + "_D");
+ for (String tableName : AbstractCacheableLockManager.getLockTableNames(lockEntry))
+ {
+ commonDBCleanScripts.add("drop table " + tableName);
+ }
}
}
More information about the exo-jcr-commits
mailing list