Class LocalCache<K,V>
- java.lang.Object
-
- com.tangosol.coherence.jcache.AbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>
-
- com.tangosol.coherence.jcache.localcache.LocalCache<K,V>
-
- Type Parameters:
K- key typeV- value type
- All Implemented Interfaces:
CoherenceBasedCache<K,V>,Closeable,AutoCloseable,Iterable<javax.cache.Cache.Entry<K,V>>,javax.cache.Cache<K,V>
public class LocalCache<K,V> extends AbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>
An in-process local cache implementation of aCachebased on a Coherence <local-cache>.- Since:
- Coherence 12.1.3
- Author:
- jf 2013.12.17, bko 2013.12.17
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLocalCache.EntryIterator<K,V>JCache Entry iterator
-
Field Summary
-
Fields inherited from class com.tangosol.coherence.jcache.AbstractCoherenceBasedCache
m_configuration, m_manager, m_namedCache, m_sJCacheName
-
Fields inherited from interface com.tangosol.coherence.jcache.CoherenceBasedCache
JCACHE_CONFIG_BACK_SCHEME_NAME, JCACHE_CONFIG_BACK_SCHEME_SERVICE_NAME, JCACHE_CONFIG_CACHE_NAME, JCACHE_CONFIG_SCHEME_NAME, JCACHE_CONFIG_SERVICE_NAME, JCACHE_EXTEND_PROXY_SERVICE_NAME, JCACHE_EXTEND_SCHEME_NAME, JCACHE_EXTEND_SERVICE_NAME, JCACHE_LOCAL_CACHE_NAME_PATTERN, JCACHE_LOCAL_CACHE_NAME_PREFIX, JCACHE_LOCAL_SCHEME_NAME, JCACHE_LOCAL_SERVICE_NAME, JCACHE_PARTITIONED_CACHE_NAME_PATTERN, JCACHE_PARTITIONED_CACHE_NAME_PREFIX, JCACHE_PARTITIONED_SCHEME_NAME, JCACHE_PARTITIONED_SERVICE_NAME, JCACHE_REMOTE_SCHEME
-
-
Constructor Summary
Constructors Constructor Description LocalCache(CoherenceBasedCacheManager manager, String sJCacheName, LocalCacheConfiguration<K,V> configuration)Constructs aLocalCacheconfigured byLocalCacheConfiguration.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()booleancontainsKey(K key)voidderegisterCacheEntryListener(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> config)voiddestroy()Destroys aCoherenceBasedCachedue to a request from aCoherenceBasedCacheManager.voiddispatch(CoherenceCacheEventEventDispatcher<K,V> dispatcher)dispatch outstanding JCache EventsVget(K key)Map<K,V>getAll(Set<? extends K> setKey)VgetAndPut(K key, V value)VgetAndRemove(K key)VgetAndReplace(K key, V value)JCacheContextgetContext()Get the JCache context for this JCache's operationsJCacheIdentifiergetIdentifier()Obtain the internal identifier used for JCache caches.InternalConverter<K>getKeyConverter()Get key converter for this.javax.cache.management.CacheMXBeangetMBean()Get JMX Bean associated with Cache.CopyOnWriteArraySet<CoherenceCacheEntryListenerRegistration<K,V>>getRegisteredAsynchronousEventListeners()Get asynchronous CacheEntryEventListeners.CopyOnWriteArraySet<CoherenceCacheEntryListenerRegistration<K,V>>getRegisteredSynchronousEventListeners()Get synchronous CacheEntryEventListeners.JCacheStatisticsgetStatistics()Get JCache statistics.InternalConverter<V>getValueConverter()Get value converter for this.<T> Tinvoke(K key, javax.cache.processor.EntryProcessor<K,V,T> proc, Object... arguments)<T> Map<K,javax.cache.processor.EntryProcessorResult<T>>invokeAll(Set<? extends K> setKey, javax.cache.processor.EntryProcessor<K,V,T> proc, Object... arguments)booleanisStatisticsEnabled()Get JCache Statistics statusIterator<javax.cache.Cache.Entry<K,V>>iterator()voidloadAll(Set<? extends K> setKeys, boolean fReplaceExistingValues, javax.cache.integration.CompletionListener listener)voidonBeforeClosing()Closes aCoherenceBasedCacheat the request of a call toCache.close().voidprocessExpiries(K key, CoherenceCacheEventEventDispatcher<K,V> dispatcher)Process expiry for entry of key.voidprocessExpiries(K keyExpired, V valueExpired, CoherenceCacheEventEventDispatcher<K,V> dispatcher)Dispatch an ExpiryEvent to registered CacheEntryListeners.voidput(K key, V value)voidputAll(Map<? extends K,? extends V> map)booleanputIfAbsent(K key, V value)voidregisterCacheEntryListener(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> config)booleanremove(K key)booleanremove(K key, V value)voidremoveAll()voidremoveAll(Set<? extends K> keys)booleanreplace(K key, V value)booleanreplace(K key, V valueOrig, V value)voidsetManagementEnabled(boolean fEnabled)Set JCache Management status.voidsetStatisticsEnabled(boolean fEnabled)Set JCache statistics statusStringtoString()-
Methods inherited from class com.tangosol.coherence.jcache.AbstractCoherenceBasedCache
close, ensureOpen, getCacheManager, getClassLoader, getConfiguration, getName, isClosed, unwrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Constructor Detail
-
LocalCache
public LocalCache(CoherenceBasedCacheManager manager, String sJCacheName, LocalCacheConfiguration<K,V> configuration)
Constructs aLocalCacheconfigured byLocalCacheConfiguration.- Parameters:
manager- theCoherenceBasedCacheManagerthat created theLocalCachesJCacheName- the JCache Name for theLocalCacheconfiguration- theLocalCacheConfigurationfor theLocalCache
-
-
Method Detail
-
onBeforeClosing
public void onBeforeClosing()
Description copied from class:AbstractCoherenceBasedCacheCloses aCoherenceBasedCacheat the request of a call toCache.close().- Specified by:
onBeforeClosingin classAbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>
-
getStatistics
public JCacheStatistics getStatistics()
Get JCache statistics.- Specified by:
getStatisticsin classAbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>- Returns:
JCacheStatisticsif enabled, null otherwise
-
isStatisticsEnabled
public boolean isStatisticsEnabled()
Description copied from class:AbstractCoherenceBasedCacheGet JCache Statistics status- Specified by:
isStatisticsEnabledin classAbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>- Returns:
- true if enabled, otherwise false
-
setStatisticsEnabled
public void setStatisticsEnabled(boolean fEnabled)
Description copied from class:AbstractCoherenceBasedCacheSet JCache statistics status- Specified by:
setStatisticsEnabledin classAbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>- Parameters:
fEnabled- true to enable
-
setManagementEnabled
public void setManagementEnabled(boolean fEnabled)
Description copied from class:AbstractCoherenceBasedCacheSet JCache Management status.- Specified by:
setManagementEnabledin classAbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>- Parameters:
fEnabled- true to enable
-
getMBean
public javax.cache.management.CacheMXBean getMBean()
Description copied from class:AbstractCoherenceBasedCacheGet JMX Bean associated with Cache.- Specified by:
getMBeanin classAbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>- Returns:
- JMX Bean
-
getRegisteredSynchronousEventListeners
public CopyOnWriteArraySet<CoherenceCacheEntryListenerRegistration<K,V>> getRegisteredSynchronousEventListeners()
Get synchronous CacheEntryEventListeners.- Returns:
- synchronous CacheEntryEventListenerRegistrations
-
getRegisteredAsynchronousEventListeners
public CopyOnWriteArraySet<CoherenceCacheEntryListenerRegistration<K,V>> getRegisteredAsynchronousEventListeners()
Get asynchronous CacheEntryEventListeners.- Returns:
- asynchronous CacheEntryEventListenerRegistrations
-
processExpiries
public void processExpiries(K key, CoherenceCacheEventEventDispatcher<K,V> dispatcher)
Process expiry for entry of key. Dispatch ExpiryEvent(s) to dispatcher.- Parameters:
key- key of entry to be expired.dispatcher- dispatcher for ExpiryEvent.
-
processExpiries
public void processExpiries(K keyExpired, V valueExpired, CoherenceCacheEventEventDispatcher<K,V> dispatcher)
Dispatch an ExpiryEvent to registered CacheEntryListeners.- Parameters:
keyExpired- key of expired entryvalueExpired- value of expired entrydispatcher- dispatch EXPIRED CacheEntryEvent to registered listeners of this cache.
-
getContext
public JCacheContext getContext()
Get the JCache context for this JCache's operations- Returns:
- JCacheContext
-
getKeyConverter
public InternalConverter<K> getKeyConverter()
Get key converter for this.- Returns:
- keyConverter
-
getValueConverter
public InternalConverter<V> getValueConverter()
Get value converter for this.- Returns:
- valueConverter value converter for this.
-
dispatch
public void dispatch(CoherenceCacheEventEventDispatcher<K,V> dispatcher)
dispatch outstanding JCache Events- Parameters:
dispatcher- outstanding JCache events
-
containsKey
public boolean containsKey(K key)
-
loadAll
public void loadAll(Set<? extends K> setKeys, boolean fReplaceExistingValues, javax.cache.integration.CompletionListener listener)
-
remove
public boolean remove(K key)
-
removeAll
public void removeAll()
-
clear
public void clear()
-
invoke
public <T> T invoke(K key, javax.cache.processor.EntryProcessor<K,V,T> proc, Object... arguments)
-
invokeAll
public <T> Map<K,javax.cache.processor.EntryProcessorResult<T>> invokeAll(Set<? extends K> setKey, javax.cache.processor.EntryProcessor<K,V,T> proc, Object... arguments)
-
registerCacheEntryListener
public void registerCacheEntryListener(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> config)
-
deregisterCacheEntryListener
public void deregisterCacheEntryListener(javax.cache.configuration.CacheEntryListenerConfiguration<K,V> config)
-
getIdentifier
public JCacheIdentifier getIdentifier()
Description copied from interface:CoherenceBasedCacheObtain the internal identifier used for JCache caches.- Specified by:
getIdentifierin interfaceCoherenceBasedCache<K,V>- Specified by:
getIdentifierin classAbstractCoherenceBasedCache<K,V,LocalCacheConfiguration<K,V>>- Returns:
- the internal
JCacheIdentifier
-
destroy
public void destroy()
Description copied from interface:CoherenceBasedCacheDestroys aCoherenceBasedCachedue to a request from aCoherenceBasedCacheManager.
-
-