You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by rm...@apache.org on 2014/05/08 19:32:13 UTC
svn commit: r1593343 - in
/commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache:
JCSCache.java JCSCachingManager.java
Author: rmannibucau
Date: Thu May 8 17:32:13 2014
New Revision: 1593343
URL: http://svn.apache.org/r1593343
Log:
better close impl of JCache
Modified:
commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCache.java
commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java
Modified: commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCache.java
URL: http://svn.apache.org/viewvc/commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCache.java?rev=1593343&r1=1593342&r2=1593343&view=diff
==============================================================================
--- commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCache.java (original)
+++ commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCache.java Thu May 8 17:32:13 2014
@@ -66,7 +66,7 @@ import static org.apache.commons.jcs.jca
public class JCSCache<K extends Serializable, V extends Serializable, C extends CompleteConfiguration<K, V>> implements Cache<K, V>
{
private final ConcurrentMap<JCSKey<K>, JCSElement<V>> delegate;
- private final CacheManager manager;
+ private final JCSCachingManager manager;
private final JCSConfiguration<K, V> config;
private final CacheLoader<K, V> loader;
private final CacheWriter<? super K, ? super V> writer;
@@ -82,7 +82,7 @@ public class JCSCache<K extends Serializ
private final ExecutorService pool;
- public JCSCache(final ClassLoader classLoader, final CacheManager mgr,
+ public JCSCache(final ClassLoader classLoader, final JCSCachingManager mgr,
final String cacheName,
final JCSConfiguration<K, V> configuration,
final Properties properties)
@@ -828,9 +828,9 @@ public class JCSCache<K extends Serializ
return;
}
- manager.destroyCache(getName());
+ manager.release(getName());
closed = true;
- delegate.clear();
+ pool.shutdownNow();
close(loader);
close(writer);
close(expiryPolicy);
@@ -839,9 +839,9 @@ public class JCSCache<K extends Serializ
close(listener);
}
listeners.clear();
- pool.shutdownNow();
JMXs.unregister(cacheConfigObjectName);
JMXs.unregister(cacheStatsObjectName);
+ delegate.clear();
}
private static void close(final Object potentiallyCloseable)
Modified: commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java
URL: http://svn.apache.org/viewvc/commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java?rev=1593343&r1=1593342&r2=1593343&view=diff
==============================================================================
--- commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java (original)
+++ commons/proper/jcs/trunk/commons-jcs-jcache/src/main/java/org/apache/commons/jcs/jcache/JCSCachingManager.java Thu May 8 17:32:13 2014
@@ -288,4 +288,8 @@ public class JCSCachingManager implement
{
return configProperties;
}
+
+ public void release(final String name) {
+ caches.remove(name);
+ }
}