Class CacheManagerImpl
- java.lang.Object
-
- com.github.benmanes.caffeine.jcache.CacheManagerImpl
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,javax.cache.CacheManager
public final class CacheManagerImpl extends java.lang.Object implements javax.cache.CacheManagerAn implementation of JSR-107CacheManagerthat manages Caffeine-based caches.
-
-
Field Summary
Fields Modifier and Type Field Description private javax.cache.spi.CachingProvidercacheProviderprivate java.util.Map<java.lang.String,CacheProxy<?,?>>cachesprivate java.lang.ref.WeakReference<java.lang.ClassLoader>classLoaderReferenceprivate booleanclosedprivate java.util.Propertiespropertiesprivate booleanrunsAsAnOsgiBundleprivate java.net.URIuri
-
Constructor Summary
Constructors Constructor Description CacheManagerImpl(javax.cache.spi.CachingProvider cacheProvider, java.net.URI uri, java.lang.ClassLoader classLoader, java.util.Properties properties)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()<K,V,C extends javax.cache.configuration.Configuration<K,V>>
javax.cache.Cache<K,V>createCache(java.lang.String cacheName, C configuration)voiddestroyCache(java.lang.String cacheName)voidenableManagement(java.lang.String cacheName, boolean enabled)voidenableStatistics(java.lang.String cacheName, boolean enabled)<K,V>
CacheProxy<K,V>getCache(java.lang.String cacheName)<K,V>
@Nullable javax.cache.Cache<K,V>getCache(java.lang.String cacheName, java.lang.Class<K> keyType, java.lang.Class<V> valueType)java.lang.Iterable<java.lang.String>getCacheNames()javax.cache.spi.CachingProvidergetCachingProvider()@Nullable java.lang.ClassLoadergetClassLoader()java.util.PropertiesgetProperties()java.net.URIgetURI()booleanisClosed()private voidrequireNotClosed()Checks that the cache manager is not closed.<T> Tunwrap(java.lang.Class<T> clazz)
-
-
-
Field Detail
-
classLoaderReference
private final java.lang.ref.WeakReference<java.lang.ClassLoader> classLoaderReference
-
caches
private final java.util.Map<java.lang.String,CacheProxy<?,?>> caches
-
cacheProvider
private final javax.cache.spi.CachingProvider cacheProvider
-
properties
private final java.util.Properties properties
-
uri
private final java.net.URI uri
-
runsAsAnOsgiBundle
private final boolean runsAsAnOsgiBundle
-
closed
private volatile boolean closed
-
-
Method Detail
-
getCachingProvider
public javax.cache.spi.CachingProvider getCachingProvider()
- Specified by:
getCachingProviderin interfacejavax.cache.CacheManager
-
getURI
public java.net.URI getURI()
- Specified by:
getURIin interfacejavax.cache.CacheManager
-
getClassLoader
public @Nullable java.lang.ClassLoader getClassLoader()
- Specified by:
getClassLoaderin interfacejavax.cache.CacheManager
-
getProperties
public java.util.Properties getProperties()
- Specified by:
getPropertiesin interfacejavax.cache.CacheManager
-
createCache
public <K,V,C extends javax.cache.configuration.Configuration<K,V>> javax.cache.Cache<K,V> createCache(java.lang.String cacheName, C configuration)- Specified by:
createCachein interfacejavax.cache.CacheManager
-
getCache
public <K,V> @Nullable javax.cache.Cache<K,V> getCache(java.lang.String cacheName, java.lang.Class<K> keyType, java.lang.Class<V> valueType)- Specified by:
getCachein interfacejavax.cache.CacheManager
-
getCache
public <K,V> CacheProxy<K,V> getCache(java.lang.String cacheName)
- Specified by:
getCachein interfacejavax.cache.CacheManager
-
getCacheNames
public java.lang.Iterable<java.lang.String> getCacheNames()
- Specified by:
getCacheNamesin interfacejavax.cache.CacheManager
-
destroyCache
public void destroyCache(java.lang.String cacheName)
- Specified by:
destroyCachein interfacejavax.cache.CacheManager
-
enableManagement
public void enableManagement(java.lang.String cacheName, boolean enabled)- Specified by:
enableManagementin interfacejavax.cache.CacheManager
-
enableStatistics
public void enableStatistics(java.lang.String cacheName, boolean enabled)- Specified by:
enableStatisticsin interfacejavax.cache.CacheManager
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejavax.cache.CacheManager- Specified by:
closein interfacejava.io.Closeable
-
isClosed
public boolean isClosed()
- Specified by:
isClosedin interfacejavax.cache.CacheManager
-
unwrap
public <T> T unwrap(java.lang.Class<T> clazz)
- Specified by:
unwrapin interfacejavax.cache.CacheManager
-
requireNotClosed
private void requireNotClosed()
Checks that the cache manager is not closed.
-
-