Package org.jgroups.blocks
Class Cache<K,V>
java.lang.Object
org.jgroups.blocks.Cache<K,V>
Simple cache which maintains keys and value. A reaper can be enabled which periodically evicts expired entries.
Also, when the cache is configured to be bounded, entries in excess of the max size will be evicted on put().
- Author:
- Bela Ban
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacestatic class -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoiddump()voidenableReaping(long interval) Runs the reaper every interval ms, evicts expired itemsSet<Map.Entry<K, Cache.Value<V>>> entrySet()This method should not be used to add or remove elements ! It was just added because ReplCacheDemo requires it for its data modelintintgetSize()booleanvoidvoidsetMaxNumberOfEntries(int max_num_entries) voidstart()voidstop()toString()
-
Constructor Details
-
Cache
public Cache()
-
-
Method Details
-
getMaxNumberOfEntries
public int getMaxNumberOfEntries() -
setMaxNumberOfEntries
public void setMaxNumberOfEntries(int max_num_entries) -
addChangeListener
-
removeChangeListener
-
getSize
public int getSize() -
isReapingEnabled
public boolean isReapingEnabled() -
enableReaping
public void enableReaping(long interval) Runs the reaper every interval ms, evicts expired items -
disableReaping
public void disableReaping() -
start
public void start() -
stop
public void stop() -
put
- Parameters:
key-val-caching_time- Number of milliseconds to keep an entry in the cache. -1 means don't cache (if reaping is enabled, we'll evict an entry with -1 caching time), 0 means never evict. In the latter case, we can still evict an entry with 0 caching time: when we have a bounded cache, we evict in order of insertion no matter what the caching time is.
-
get
-
getInternalMap
This method should not be used to add or remove elements ! It was just added because ReplCacheDemo requires it for its data model- Returns:
-
getEntry
-
remove
-
entrySet
-
toString
-
dump
-