Author: nzamosenchuk
Date: 2010-04-08 08:42:09 -0400 (Thu, 08 Apr 2010)
New Revision: 2229
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/jbosscache/JBossCacheWorkspaceStorageCache.java
Log:
EXOJCR-545: Configuration analyzer re-written.
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/jbosscache/JBossCacheWorkspaceStorageCache.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/jbosscache/JBossCacheWorkspaceStorageCache.java 2010-04-08
11:39:53 UTC (rev 2228)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/jbosscache/JBossCacheWorkspaceStorageCache.java 2010-04-08
12:42:09 UTC (rev 2229)
@@ -42,7 +42,7 @@
import org.jboss.cache.Fqn;
import org.jboss.cache.Node;
import org.jboss.cache.config.EvictionRegionConfig;
-import org.jboss.cache.eviction.ExpirationAlgorithm;
+import org.jboss.cache.eviction.ExpirationAlgorithmConfig;
import java.io.Serializable;
import java.util.ArrayList;
@@ -287,22 +287,16 @@
evictionConfigurations.add(parentCache.getConfiguration().getEvictionConfig().getDefaultEvictionRegionConfig());
boolean useExpiration = false;
- Iterator<EvictionRegionConfig> iterator = evictionConfigurations.iterator();
-
// looking over all eviction configurations till the end or till some expiration
algorithm subclass not found.
- while (iterator.hasNext() && !useExpiration)
+ for (EvictionRegionConfig evictionRegionConfig : evictionConfigurations)
{
- try
+ if (evictionRegionConfig.getEvictionAlgorithmConfig() instanceof
ExpirationAlgorithmConfig)
{
- String evictionClassName =
iterator.next().getEvictionAlgorithmConfig().getEvictionAlgorithmClassName();
- Class<?> evictionClass = Class.forName(evictionClassName);
- // returns true if ExpirationAlgorithm is superClass of evictionClass
- useExpiration = useExpiration ||
ExpirationAlgorithm.class.isAssignableFrom(evictionClass);
+ // force set expiration key to default value in all Expiration configurations
(if any)
+
((ExpirationAlgorithmConfig)evictionRegionConfig.getEvictionAlgorithmConfig())
+ .setExpirationKeyName(ExpirationAlgorithmConfig.EXPIRATION_KEY);
+ useExpiration = true;
}
- catch (ClassNotFoundException e)
- {
- throw new RepositoryConfigurationException("Unable to check JBossCache
eviction class.", e);
- }
}
if (useExpiration)
Show replies by date