Package com.tangosol.net.cache
Class AbstractEvictionPolicy
java.lang.Object
com.tangosol.util.Base
com.tangosol.net.cache.AbstractEvictionPolicy
- All Implemented Interfaces:
ConfigurableCacheMap.EvictionPolicy,MapListener,EventListener
public abstract class AbstractEvictionPolicy
extends Base
implements ConfigurableCacheMap.EvictionPolicy, MapListener
An abstract base class for custom cache eviction policies.
- Author:
- jh 2005.12.14
-
Nested Class Summary
Nested classes/interfaces inherited from class com.tangosol.util.Base
Base.LoggingWriter -
Field Summary
Fields inherited from class com.tangosol.util.Base
DEFAULT_LOAD_FACTOR, LOG_ALWAYS, LOG_CONFIG, LOG_DEBUG, LOG_ERR, LOG_INFO, LOG_MAX, LOG_MIN, LOG_QUIET, LOG_WARN, POWER_0, POWER_G, POWER_K, POWER_M, POWER_T, UNIT_D, UNIT_H, UNIT_M, UNIT_MS, UNIT_NS, UNIT_S, UNIT_USFields inherited from interface com.tangosol.util.MapListener
ASYNCHRONOUS, SYNCHRONOUS, VERSION_AWARE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ConfigurableCacheMapensureCache(MapEvent evt) Return the ConfigurableCacheMap that uses this eviction policy.voidentryDeleted(MapEvent evt) Invoked when a map entry has been removed.voidentryInserted(MapEvent evt) Invoked when a map entry has been inserted.abstract voidThis method is called to indicate that an entry has been either inserted or updated.voidentryUpdated(MapEvent evt) Invoked when a map entry has been updated.protected ConfigurableCacheMapgetCache()Return the ConfigurableCacheMap that uses this eviction policy.protected ConfigurableCacheMap.EntryReturn the map entry associated with the given map event.getName()Obtain the name of the eviction policy.Methods inherited from class com.tangosol.util.Base
azzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, newHashMap, newHashMap, newHashSet, newHashSet, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, waitMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.tangosol.net.cache.ConfigurableCacheMap.EvictionPolicy
entryTouched, requestEvictionMethods inherited from interface com.tangosol.util.MapListener
characteristics, isAsynchronous, isSynchronous, isVersionAware, synchronous
-
Constructor Details
-
AbstractEvictionPolicy
public AbstractEvictionPolicy()
-
-
Method Details
-
getName
Obtain the name of the eviction policy. This is intended to be human readable for use in a monitoring tool; examples include "LRU" and "LFU".- Specified by:
getNamein interfaceConfigurableCacheMap.EvictionPolicy- Returns:
- the name of the eviction policy
-
entryInserted
Invoked when a map entry has been inserted.- Specified by:
entryInsertedin interfaceMapListener- Parameters:
evt- the MapEvent carrying the insert information
-
entryUpdated
Invoked when a map entry has been updated.- Specified by:
entryUpdatedin interfaceMapListener- Parameters:
evt- the MapEvent carrying the update information
-
entryDeleted
Invoked when a map entry has been removed.- Specified by:
entryDeletedin interfaceMapListener- Parameters:
evt- the MapEvent carrying the delete information
-
entryUpdated
This method is called to indicate that an entry has been either inserted or updated.- Parameters:
entry- the Entry that has been inserted or updated
-
ensureCache
Return the ConfigurableCacheMap that uses this eviction policy.If the ConfigurableCacheMap property has not been intialized, it is set to the ConfigurableCacheMap that raised the given event.
- Parameters:
evt- the MapEvent raised by the ConfigurableCacheMap that uses this eviction policy- Returns:
- the ConfigurableCacheMap that uses this eviction policy
-
getEntry
Return the map entry associated with the given map event.- Parameters:
evt- a map event raised by the cache that uses this eviction policy- Returns:
- the map entry associated with the given event
-
getCache
Return the ConfigurableCacheMap that uses this eviction policy. The ConfigurableCacheMap is set the first time a map event is processed by the eviction policy.- Returns:
- the ConfigurableCacheMap or null if a map event has not yet been processed by this eviction policy
-