|
ehcache | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.sf.ehcache.constructs.nonstop.store.NonstopStoreImpl
public class NonstopStoreImpl
A NonstopStore implementation which does not block threads when the cluster goes down.
| Field Summary |
|---|
| Fields inherited from interface net.sf.ehcache.store.Store |
|---|
CLUSTER_COHERENT, NODE_COHERENT |
| Constructor Summary | |
|---|---|
NonstopStoreImpl(NonstopActiveDelegateHolder nonstopActiveDelegateHolder,
CacheCluster cacheCluster,
NonstopConfiguration nonstopConfig,
CacheConfiguration.TransactionalMode transactionalMode,
TransactionManagerLookup transactionManagerLookup)
Constructor accepting the NonstopActiveDelegateHolder, CacheCluster and NonstopConfiguration |
|
| Method Summary | ||
|---|---|---|
void |
addStoreListener(StoreListener listener)
Add a listener to the store. |
|
boolean |
bufferFull()
Some store types, such as the disk stores can fill their write buffers if puts come in too fast. |
|
void |
clusterRejoined()
Called when rejoin has happened for this store |
|
boolean |
containsKey(java.lang.Object key)
A check to see if a key is in the Store. |
|
boolean |
containsKeyInMemory(java.lang.Object key)
A check to see if a key is in the Store and is currently held in memory. |
|
boolean |
containsKeyOffHeap(java.lang.Object key)
A check to see if a key is in the Store and is currently held off-heap. |
|
boolean |
containsKeyOnDisk(java.lang.Object key)
A check to see if a key is in the Store and is currently held on disk. |
|
void |
dispose()
Prepares for shutdown. |
|
|
executeClusterOperation(ClusterOperation<V> operation)
Execute the ClusterOperation within this NonstopStore context. |
|
Results |
executeQuery(StoreQuery query)
Execute the given query on this store |
|
void |
expireElements()
Expire all elements. |
|
void |
flush()
Flush elements to persistent store. |
|
Element |
get(java.lang.Object key)
Gets an item from the cache. |
|
Policy |
getInMemoryEvictionPolicy()
|
|
int |
getInMemorySize()
Returns the current local in-memory store size |
|
long |
getInMemorySizeInBytes()
Gets the size of the in-memory portion of the store, in bytes. |
|
java.lang.Object |
getInternalContext()
This should not be used, and will generally return null |
|
java.util.List |
getKeys()
Gets an Array of the keys for all elements in the disk store. |
|
java.util.Set |
getLocalKeys()
Returns set of keys from the cache which are present in the node locally. |
|
java.lang.Object |
getMBean()
Optional implementation specific MBean exposed by the store. |
|
int |
getOffHeapSize()
Returns the current local off-heap store size |
|
long |
getOffHeapSizeInBytes()
Gets the size of the off-heap portion of the store, in bytes. |
|
int |
getOnDiskSize()
Returns the current local on-disk store size |
|
long |
getOnDiskSizeInBytes()
Gets the size of the on-disk portion of the store, in bytes. |
|
Element |
getQuiet(java.lang.Object key)
Gets an Element from the Store, without updating statistics |
|
|
getSearchAttribute(java.lang.String attributeName)
Retrieve the given named search attribute |
|
int |
getSize()
Returns the current local store size |
|
Status |
getStatus()
Returns the cache status. |
|
int |
getTerracottaClusteredSize()
Returns the current Terracotta clustered store size |
|
boolean |
isCacheCoherent()
Indicates whether this store provides a coherent view of all the elements in a cache. |
|
boolean |
isClusterCoherent()
Returns true if the cache is in coherent mode cluster-wide. |
|
boolean |
isNodeCoherent()
Returns true if the cache is in coherent mode for the current node. |
|
boolean |
put(Element element)
Puts an item into the store. |
|
Element |
putIfAbsent(Element element)
Put an element in the store if no element is currently mapped to the elements key. |
|
boolean |
putWithWriter(Element element,
CacheWriterManager writerManager)
Puts an item into the store and the cache writer manager in an atomic operation |
|
Element |
remove(java.lang.Object key)
Removes an item from the cache. |
|
void |
removeAll()
Remove all of the elements from the store. |
|
Element |
removeElement(Element element,
ElementValueComparator comparator)
Remove the Element mapped to the key for the supplied element if the value of the supplied Element is equal to the value of the cached Element. |
|
void |
removeStoreListener(StoreListener listener)
Remove listener from store. |
|
Element |
removeWithWriter(java.lang.Object key,
CacheWriterManager writerManager)
Removes an item from the store and the cache writer manager in an atomic operation. |
|
Element |
replace(Element element)
Replace the cached element only if an Element is currently cached for this key |
|
boolean |
replace(Element old,
Element element,
ElementValueComparator comparator)
Replace the cached element only if the value of the current Element is equal to the value of the supplied old Element. |
|
NonstopStore |
resolveTimeoutBehaviorStore()
Resolve the NonstopStore to be used |
|
void |
setAttributeExtractors(java.util.Map<java.lang.String,AttributeExtractor> extractors)
Inform this store of the configured attribute extractors. |
|
void |
setInMemoryEvictionPolicy(Policy policy)
Sets the eviction policy strategy. |
|
void |
setNodeCoherent(boolean coherent)
Sets the cache in coherent or incoherent mode for the current node depending on the parameter. |
|
Element |
unlockedGet(java.lang.Object key)
Gets the value associated with the key without acquiring any locks. |
|
Element |
unlockedGetQuiet(java.lang.Object key)
Same as TerracottaStore.unlockedGet(Object) but does not update statistics |
|
Element |
unsafeGet(java.lang.Object key)
Returns the local value associated with the key. |
|
Element |
unsafeGetQuiet(java.lang.Object key)
Same as TerracottaStore.unsafeGet(Object) but does not update last usage statistics |
|
void |
waitUntilClusterCoherent()
This method waits until the cache is in coherent mode in all the connected nodes. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public NonstopStoreImpl(NonstopActiveDelegateHolder nonstopActiveDelegateHolder,
CacheCluster cacheCluster,
NonstopConfiguration nonstopConfig,
CacheConfiguration.TransactionalMode transactionalMode,
TransactionManagerLookup transactionManagerLookup)
NonstopActiveDelegateHolder, CacheCluster and NonstopConfiguration
| Method Detail |
|---|
public NonstopStore resolveTimeoutBehaviorStore()
NonstopStore to be used
resolveTimeoutBehaviorStore in interface NonstopTimeoutBehaviorStoreResolverNonstopStorepublic java.lang.Object getInternalContext()
getInternalContext in interface Store
public void waitUntilClusterCoherent()
throws java.lang.InterruptedException
waitUntilClusterCoherent in interface Storejava.lang.InterruptedExceptionpublic boolean bufferFull()
bufferFull in interface Storepublic boolean containsKeyOffHeap(java.lang.Object key)
containsKeyOffHeap in interface Storekey - The Element key
public boolean containsKeyOnDisk(java.lang.Object key)
containsKeyOnDisk in interface Storekey - The Element key
public Policy getInMemoryEvictionPolicy()
getInMemoryEvictionPolicy in interface StoreStore.setInMemoryEvictionPolicy(Policy)public java.lang.Object getMBean()
getMBean in interface Storepublic int getOffHeapSize()
getOffHeapSize in interface Storepublic long getOffHeapSizeInBytes()
getOffHeapSizeInBytes in interface Storepublic int getOnDiskSize()
getOnDiskSize in interface Storepublic long getOnDiskSizeInBytes()
getOnDiskSizeInBytes in interface Storepublic Status getStatus()
getStatus in interface Storepublic void setInMemoryEvictionPolicy(Policy policy)
setInMemoryEvictionPolicy in interface Storepolicy - the new policypublic void expireElements()
expireElements in interface Storepublic void addStoreListener(StoreListener listener)
addStoreListener in interface Storepublic void removeStoreListener(StoreListener listener)
removeStoreListener in interface Storepublic void setAttributeExtractors(java.util.Map<java.lang.String,AttributeExtractor> extractors)
setAttributeExtractors in interface Storepublic boolean isCacheCoherent()
Store.isClusterCoherent() (introduced since 2.0)
Use Store.isNodeCoherent() to find out if the cache is coherent in the current node in the cluster
isCacheCoherent in interface Storetrue if the store is coherent; or false if the
store potentially splits the cache storage with another store or
isn't internally coherentpublic boolean isClusterCoherent()
isClusterCoherent in interface Storepublic boolean isNodeCoherent()
isNodeCoherent in interface Store
public void setNodeCoherent(boolean coherent)
throws java.lang.UnsupportedOperationException
setNodeCoherent(true) when the cache is already in coherent mode or
calling setNodeCoherent(false) when already in incoherent mode will be a no-op.
It applies to coherent clustering mechanisms only e.g. Terracotta
setNodeCoherent in interface Storecoherent - true transitions to coherent mode, false to incoherent mode
java.lang.UnsupportedOperationException - if this store does not support cache coherence, like RMI replicationpublic void dispose()
dispose in interface Storepublic boolean containsKey(java.lang.Object key)
containsKey in interface Storekey - The Element key
public boolean containsKeyInMemory(java.lang.Object key)
containsKeyInMemory in interface Storekey - The Element key
public Results executeQuery(StoreQuery query)
executeQuery in interface Storequery - query to execute
public <T> Attribute<T> getSearchAttribute(java.lang.String attributeName)
getSearchAttribute in interface StoreT - type of the attributeattributeName - the name of the attribute to retrieve
public void flush()
throws java.io.IOException
flush in interface Storejava.io.IOException - if any IO error occurspublic Element get(java.lang.Object key)
get in interface Storepublic int getInMemorySize()
getInMemorySize in interface Storepublic long getInMemorySizeInBytes()
getInMemorySizeInBytes in interface Storepublic java.util.List getKeys()
getKeys in interface StoreSerializable keyspublic Element getQuiet(java.lang.Object key)
Element from the Store, without updating statistics
getQuiet in interface Storepublic int getSize()
getSize in interface Storepublic int getTerracottaClusteredSize()
getTerracottaClusteredSize in interface Store
public boolean put(Element element)
throws CacheException
put in interface StoreCacheException
public Element putIfAbsent(Element element)
throws java.lang.NullPointerException
putIfAbsent in interface Storeelement - element to be added
java.lang.NullPointerException - if the element is null, or has a null key
public boolean putWithWriter(Element element,
CacheWriterManager writerManager)
throws CacheException
putWithWriter in interface StoreCacheExceptionpublic Element remove(java.lang.Object key)
remove in interface Store
public void removeAll()
throws CacheException
CacheEventListeners they are notified of the expiry or removal
of the Element as each is removed.
removeAll in interface StoreCacheException
public Element removeElement(Element element,
ElementValueComparator comparator)
throws java.lang.NullPointerException
removeElement in interface Storeelement - Element to be removedcomparator - ElementValueComparator to use to compare elements
java.lang.NullPointerException - if the element is null, or has a null key
public Element removeWithWriter(java.lang.Object key,
CacheWriterManager writerManager)
throws CacheException
removeWithWriter in interface StoreCacheException
public boolean replace(Element old,
Element element,
ElementValueComparator comparator)
throws java.lang.NullPointerException,
java.lang.IllegalArgumentException
replace in interface Storeold - Element to be test againstelement - Element to be cachedcomparator - ElementValueComparator to use to compare elements
java.lang.NullPointerException - if the either Element is null or has a null key
java.lang.IllegalArgumentException - if the two Element keys are non-null but not equal
public Element replace(Element element)
throws java.lang.NullPointerException
replace in interface Storeelement - Element to be cached
java.lang.NullPointerException - if the Element is null or has a null keypublic java.util.Set getLocalKeys()
getLocalKeys in interface TerracottaStorepublic Element unlockedGet(java.lang.Object key)
unlockedGet in interface TerracottaStorepublic Element unlockedGetQuiet(java.lang.Object key)
TerracottaStore.unlockedGet(Object) but does not update statistics
unlockedGetQuiet in interface TerracottaStorepublic Element unsafeGet(java.lang.Object key)
unsafeGet in interface TerracottaStorekey - the key
public Element unsafeGetQuiet(java.lang.Object key)
TerracottaStore.unsafeGet(Object) but does not update last usage statistics
unsafeGetQuiet in interface TerracottaStorekey - the key
public <V> V executeClusterOperation(ClusterOperation<V> operation)
ClusterOperation within this NonstopStore context.
executeClusterOperation in interface NonstopStoreV - Return type depending on the ClusterOperation
ClusterOperationpublic void clusterRejoined()
clusterRejoined in interface RejoinAwareNonstopStore
|
ehcache | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||