Package com.tangosol.net
Class DefaultConfigurableCacheFactory.Manager
- java.lang.Object
-
- com.tangosol.util.Base
-
- com.tangosol.net.AbstractBackingMapManager
-
- com.tangosol.net.DefaultConfigurableCacheFactory.Manager
-
- All Implemented Interfaces:
BackingMapManager
- Enclosing class:
- DefaultConfigurableCacheFactory
public class DefaultConfigurableCacheFactory.Manager extends AbstractBackingMapManager
BackingMapManager implementation that uses the configuration XML to create the required backing maps and provides client access to those maps.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.tangosol.util.Base
Base.LoggingWriter
-
-
Field Summary
Fields Modifier and Type Field Description protected Map
m_mapBackingMap
The map of backing maps keyed by corresponding cache names.protected Map
m_mapBackingMapListeners
The map of backing map listeners keyed by the corresponding backing map references.
-
Constructor Summary
Constructors Constructor Description Manager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Map
getBackingMap(String sName)
Get the backing Map associated with a given cache.DefaultConfigurableCacheFactory
getCacheFactory()
Obtain the "container" DefaultConfigurableCacheFactory that created this manager and which this manager is bound to.StorageAccessAuthorizer
getStorageAccessAuthorizer(String sName)
Determine theStorageAccessAuthorizer
that is used by a CacheService to secure access to the NamedCache with the specified name.void
init(BackingMapManagerContext context)
Called by a CacheService to indicate to this manager that the manager is being associated with the CacheService.Map
instantiateBackingMap(String sName)
Instantiate a [thread safe] Map that should be used by a CacheService to store cached values for a NamedCache with the specified name.boolean
isBackingMapPersistent(String sName)
Determine if the contents of the Map that is used by a CacheService to store cached values for a NamedCache with the specified name should be persisted.boolean
isBackingMapSlidingExpiry(String sName)
Determine if the Map that is used by a CacheService to store cached values for a NamedCache with specified name enables the sliding expiry - the expiry delay being extended by the read operations.void
releaseBackingMap(String sName, Map map)
Release the specified Map that was created using theBackingMapManager.instantiateBackingMap(String)
method.protected void
setBackingMap(String sName, Map map)
Associate the specified backing Map with a given name.-
Methods inherited from class com.tangosol.net.AbstractBackingMapManager
getContext
-
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, 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, wait
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.tangosol.net.BackingMapManager
getReadLocator, isBackingMapPersistent
-
-
-
-
Method Detail
-
init
public void init(BackingMapManagerContext context)
Called by a CacheService to indicate to this manager that the manager is being associated with the CacheService. This method is called once immediately upon the startup of the CacheService, before any NamedCache objects are created by the CacheService.Important note: BackingMapManager cannot be associated with more then one instance of a CacheService. However, in a situation when a CacheService automatically restarts, it is possible that this manager instance is re-used by a newly created (restarted) CacheService calling this method once again providing a new context.
- Specified by:
init
in interfaceBackingMapManager
- Overrides:
init
in classAbstractBackingMapManager
- Parameters:
context
- the BackingMapManagerContext object for this BackingMapManager
-
instantiateBackingMap
public Map instantiateBackingMap(String sName)
Instantiate a [thread safe] Map that should be used by a CacheService to store cached values for a NamedCache with the specified name.If the contents of the Map can be modified by anything other than the CacheService itself (e.g. if the Map automatically expires its entries periodically or size-limits its contents), then the returned object must implement the ObservableMap interface.
- Parameters:
sName
- the name of the NamedCache for which this backing map is being created- Returns:
- an object implementing the Map interface that will provide backing storage for the specified cache name
-
isBackingMapPersistent
public boolean isBackingMapPersistent(String sName)
Determine if the contents of the Map that is used by a CacheService to store cached values for a NamedCache with the specified name should be persisted.- Parameters:
sName
- the name of the NamedCache- Returns:
- true if the CacheService should persist the backing storage of the specified NamedCache
-
isBackingMapSlidingExpiry
public boolean isBackingMapSlidingExpiry(String sName)
Determine if the Map that is used by a CacheService to store cached values for a NamedCache with specified name enables the sliding expiry - the expiry delay being extended by the read operations.- Parameters:
sName
- the name of the NamedCache- Returns:
- true if the backing map of the specified NamedCache enables the sliding expiry
-
getStorageAccessAuthorizer
public StorageAccessAuthorizer getStorageAccessAuthorizer(String sName)
Determine theStorageAccessAuthorizer
that is used by a CacheService to secure access to the NamedCache with the specified name.- Parameters:
sName
- the name of the NamedCache- Returns:
- the
StorageAccessAuthorizer
or null if the authorizer is not configured
-
releaseBackingMap
public void releaseBackingMap(String sName, Map map)
Release the specified Map that was created using theBackingMapManager.instantiateBackingMap(String)
method. This method is invoked by the CacheService when the CacheService no longer requires the specified Map object.- Specified by:
releaseBackingMap
in interfaceBackingMapManager
- Overrides:
releaseBackingMap
in classAbstractBackingMapManager
- Parameters:
sName
- the name of the NamedCache for which the specified Map object has acted as the backing mapmap
- the Map object that is being released
-
getBackingMap
public Map getBackingMap(String sName)
Get the backing Map associated with a given cache.- Parameters:
sName
- the cache name- Returns:
- a Map associated with the specified name
-
setBackingMap
protected void setBackingMap(String sName, Map map)
Associate the specified backing Map with a given name.- Parameters:
sName
- the cache namemap
- the backing map associated with the specified name
-
getCacheFactory
public DefaultConfigurableCacheFactory getCacheFactory()
Obtain the "container" DefaultConfigurableCacheFactory that created this manager and which this manager is bound to.- Returns:
- the DefaultConfigurableCacheFactory that created this manager
-
-