Author: tolusha
Date: 2012-03-30 04:25:59 -0400 (Fri, 30 Mar 2012)
New Revision: 5993
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/jbosscache/ExoJBossCacheFactory.java
Log:
EXOJCR-1838: Remove workraround about using ConcurretnHashMap
Modified:
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/jbosscache/ExoJBossCacheFactory.java
===================================================================
---
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/jbosscache/ExoJBossCacheFactory.java 2012-03-30
08:07:47 UTC (rev 5992)
+++
jcr/trunk/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/jbosscache/ExoJBossCacheFactory.java 2012-03-30
08:25:59 UTC (rev 5993)
@@ -43,9 +43,9 @@
import java.io.Serializable;
import java.security.PrivilegedAction;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
-import java.util.concurrent.ConcurrentHashMap;
import javax.management.ObjectName;
import javax.transaction.TransactionManager;
@@ -284,7 +284,7 @@
Map<ConfigurationKey, CacheInstance> caches = allCacheTypes.get(cacheType);
if (caches == null)
{
- caches = new ConcurrentHashMap<ConfigurationKey, CacheInstance>();
+ caches = new HashMap<ConfigurationKey, CacheInstance>();
allCacheTypes.put(cacheType, caches);
}
Configuration cfg = cache.getConfiguration();
@@ -334,8 +334,10 @@
Map<CacheType, Map<ConfigurationKey, CacheInstance>> allCacheTypes =
CACHES.get(container);
Map<ConfigurationKey, CacheInstance> caches = allCacheTypes.get(cacheType);
- for (Entry<ConfigurationKey, CacheInstance> entry : caches.entrySet())
+ for (Iterator<Entry<ConfigurationKey, CacheInstance>> it =
caches.entrySet().iterator(); it.hasNext();)
{
+ Entry<ConfigurationKey, CacheInstance> entry = it.next();
+
CacheInstance cacheInstance = entry.getValue();
if (cacheInstance.isSame(cache))
{
@@ -343,7 +345,7 @@
if (!cacheInstance.hasReferences())
{
- caches.remove(entry.getKey());
+ it.remove();
PrivilegedJBossCacheHelper.stop((Cache<Serializable,
Object>)cache);
}
}
Show replies by date