public class VersionedBackingMap extends ReadWriteBackingMap
This implementation does not support null keys or null values. The values stored in this Map must implement the Versionable interface.
Modifier and Type | Class and Description |
---|---|
class |
VersionedBackingMap.CacheStoreWrapper
Deprecated.
A wrapper around the original CacheStore to allow operations to be
overridden and extended.
|
protected class |
VersionedBackingMap.InternalMapListener
Deprecated.
A MapListener implementation that listens to the internal cache and
routes those events to anyone listening to this VersionedBackingMap.
|
ReadWriteBackingMap.BinaryEntryStoreWrapper, ReadWriteBackingMap.CacheLoaderCacheStore, ReadWriteBackingMap.Entry, ReadWriteBackingMap.EntrySet, ReadWriteBackingMap.EvictingBackupMap, ReadWriteBackingMap.KeySet, ReadWriteBackingMap.ReadLatch, ReadWriteBackingMap.ReadQueue, ReadWriteBackingMap.ReadThread, ReadWriteBackingMap.StoreWrapper, ReadWriteBackingMap.ValuesCollection, ReadWriteBackingMap.WriteQueue, ReadWriteBackingMap.WriteThread
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
Modifier and Type | Field and Description |
---|---|
static long |
MAX_LOCK_WAIT
Deprecated.
The length of time (in millis) to wait on a lock; keep this value low
to avoid causing timing problems since some calls will be on the
distributed cache thread.
|
BIN_ERASE_PENDING, BIN_STORE_PENDING, GUARD_RECOVERY, m_listenerSupport, MIN_REQUEUE_DELAY, PROP_WB_REMOVE_DEFAULT, REMOVED, RWBM_WB_REMOVE_DEFAULT
EXPIRY_DEFAULT, EXPIRY_NEVER
Constructor and Description |
---|
VersionedBackingMap(BackingMapManagerContext ctxService,
ObservableMap mapInternal,
Map mapMisses,
CacheLoader loader,
NamedCache mapVersionTransient,
NamedCache mapVersionPersist,
boolean fManageTransient)
Deprecated.
Construct a VersionedBackingMap using a CacheLoader object.
|
VersionedBackingMap(BackingMapManagerContext ctxService,
ObservableMap mapInternal,
Map mapMisses,
CacheStore store,
boolean fReadOnly,
int cWriteBehindSeconds,
double dflRefreshAheadFactor,
NamedCache mapVersionTransient,
NamedCache mapVersionPersist,
boolean fManageTransient)
Deprecated.
Construct a VersionedBackingMap using a CacheStore object.
|
VersionedBackingMap(BackingMapManagerContext ctxService,
ObservableMap mapInternal,
Map mapMisses,
CacheStore store,
boolean fReadOnly,
int cWriteBehindSeconds,
double dflRefreshAheadFactor,
NamedCache mapVersionTransient,
NamedCache mapVersionPersist,
boolean fManageTransient,
boolean fWriteBehindRemove)
Deprecated.
Construct a VersionedBackingMap using a CacheStore object.
|
Modifier and Type | Method and Description |
---|---|
NamedCache |
getPersistentVersionCache()
Deprecated.
Get the cache of version info for the data stored in the persistent
store behind this backing map (and other related backing maps if this
is backing a distributed cache).
|
NamedCache |
getTransientVersionCache()
Deprecated.
Get the cache of version info for the data maintained in this
backing map (and other related backing maps if this is backing a
distributed cache).
|
protected ReadWriteBackingMap.CacheStoreWrapper |
instantiateCacheStoreWrapper(CacheStore store)
Deprecated.
Factory pattern: Instantiate a CacheStore wrapper around the passed
CacheStore.
|
protected MapListener |
instantiateInternalListener()
Deprecated.
Factory pattern: Create a MapListener that listens to the internal
cache and routes those events to anyone listening to this
VersionedBackingMap.
|
boolean |
isManagingTransientVersion()
Deprecated.
Determine if this backing map is responsible for keeping the transient
version cache in sync.
|
protected void |
updatePersistentVersion(Object oKey,
Comparable ver)
Deprecated.
Update the persistent version of the specified key.
|
protected void |
updateTransientVersion(Object oKey,
Comparable ver)
Deprecated.
Update the transient version of the specified key.
|
addMapListener, addMapListener, addMapListener, cancelOutstandingReads, clear, configureCacheStore, configureInternalCache, configureReadThread, configureWriteThread, containsKey, containsValue, entrySet, equals, extractExpiry, flush, flush, get, getAll, getCachedOrPending, getCacheService, getCacheStore, getCacheStoreTimeoutMillis, getContext, getControlMap, getFromInternalCache, getInternalCache, getInternalConfigurableCache, getInternalListener, getMissesCache, getPendingRemoves, getReadQueue, getReadThread, getRefreshAheadFactor, getSyntheticEventsMap, getWriteBatchFactor, getWriteBehindMillis, getWriteBehindSeconds, getWriteMaxBatchSize, getWriteQueue, getWriteRequeueThreshold, getWriteThread, hashCode, heartbeat, instantiateCacheLoaderCacheStore, instantiateCacheStoreWrapper, instantiateControlMap, instantiateEntry, instantiateEntry, instantiateEntrySet, instantiateKeySet, instantiateReadLatch, instantiateReadQueue, instantiateReadThread, instantiateValuesCollection, instantiateWriteQueue, instantiateWriteThread, isActive, isReadOnly, isRefreshAhead, isRethrowExceptions, isWriteBehind, isWriteBehindRemove, isWriteThrough, keySet, put, put, putAll, putInternal, putToInternalCache, putToInternalCache, putToInternalCache, putToInternalMap, release, remove, removeFromWriteQueue, removeInternal, removeMapListener, removeMapListener, removeMapListener, setCacheName, setCacheStoreTimeoutMillis, setRefreshAheadFactor, setRethrowExceptions, setWriteBatchFactor, setWriteBehindMillis, setWriteBehindSeconds, setWriteMaxBatchSize, setWriteRequeueThreshold, size, terminateReadThread, terminateWriteThread, toString, updateThreadName, values, waitFor
clone, isEmpty
finalize, getClass, notify, notifyAll, wait, wait, wait
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, isEmpty, merge, putIfAbsent, remove, replace, replace, replaceAll
public static final long MAX_LOCK_WAIT
public VersionedBackingMap(BackingMapManagerContext ctxService, ObservableMap mapInternal, Map mapMisses, CacheLoader loader, NamedCache mapVersionTransient, NamedCache mapVersionPersist, boolean fManageTransient)
ctxService
- the context provided by the CacheService
which is using this backing mapmapInternal
- the ObservableMap used to store the data
internally in this backing mapmapMisses
- the Map used to cache CacheLoader misses
(optional)loader
- the CacheLoader responsible for the
persistence of the cached data (optional)mapVersionTransient
- (optional) a replicated cache of versions
of the cached data as it is in memorymapVersionPersist
- (optional) a replicated cache of versions
of the cached data as it was written to the
CacheStorefManageTransient
- if true, the backing map is responsible for
keeping the transient version cache up to
date; if false (as is the case when using
the VersionedNearCache implementation), the
backing map manages the transient version
cache only for operations for which no
other party is aware (such as entry expiry)public VersionedBackingMap(BackingMapManagerContext ctxService, ObservableMap mapInternal, Map mapMisses, CacheStore store, boolean fReadOnly, int cWriteBehindSeconds, double dflRefreshAheadFactor, NamedCache mapVersionTransient, NamedCache mapVersionPersist, boolean fManageTransient)
ctxService
- the context provided by the CacheService
which is using this backing mapmapInternal
- the ObservableMap used to store the data
internally in this backing mapmapMisses
- the Map used to cache CacheStore misses
(optional)store
- the object responsible for the persistence
of the cached data (optional)fReadOnly
- pass true to use the CacheStore only for
read operationscWriteBehindSeconds
- number of seconds to write if there is a
CacheStore; zero disables write-behind
caching (optional)dflRefreshAheadFactor
- the interval before an entry expiration time
(expressed as a percentage of the internal
cache expiration interval) during which an
asynchronous load request for the
entry will be scheduled; zero disables
refresh-ahead; only applicable when
the mapInternal parameter is an
instance of LocalCache
(optional)mapVersionTransient
- (optional) a replicated cache of versions
of the cached data as it is in memorymapVersionPersist
- (optional) a replicated cache of versions
of the cached data as it was written to the
CacheStorefManageTransient
- if true, the backing map is responsible for
keeping the transient version cache up to
date; if false (as is the case when using
the VersionedNearCache implementation), the
backing map manages the transient version
cache only for operations for which no
other party is aware (such as entry expiry)public VersionedBackingMap(BackingMapManagerContext ctxService, ObservableMap mapInternal, Map mapMisses, CacheStore store, boolean fReadOnly, int cWriteBehindSeconds, double dflRefreshAheadFactor, NamedCache mapVersionTransient, NamedCache mapVersionPersist, boolean fManageTransient, boolean fWriteBehindRemove)
ctxService
- the context provided by the CacheService
which is using this backing mapmapInternal
- the ObservableMap used to store the data
internally in this backing mapmapMisses
- the Map used to cache CacheStore misses
(optional)store
- the object responsible for the persistence
of the cached data (optional)fReadOnly
- pass true to use the CacheStore only for
read operationscWriteBehindSeconds
- number of seconds to write if there is a
CacheStore; zero disables write-behind
caching (optional)dflRefreshAheadFactor
- the interval before an entry expiration time
(expressed as a percentage of the internal
cache expiration interval) during which an
asynchronous load request for the
entry will be scheduled; zero disables
refresh-ahead; only applicable when
the mapInternal parameter is an
instance of LocalCache
(optional)mapVersionTransient
- (optional) a replicated cache of versions
of the cached data as it is in memorymapVersionPersist
- (optional) a replicated cache of versions
of the cached data as it was written to the
CacheStorefManageTransient
- if true, the backing map is responsible for
keeping the transient version cache up to
date; if false (as is the case when using
the VersionedNearCache implementation), the
backing map manages the transient version
cache only for operations for which no
other party is aware (such as entry expiry)fWriteBehindRemove
- pass true if the specified loader is in fact
a CacheStore that needs to apply write-behind to removeprotected MapListener instantiateInternalListener()
instantiateInternalListener
in class ReadWriteBackingMap
protected ReadWriteBackingMap.CacheStoreWrapper instantiateCacheStoreWrapper(CacheStore store)
instantiateCacheStoreWrapper
in class ReadWriteBackingMap
store
- the CacheStore to wrappublic NamedCache getPersistentVersionCache()
protected void updatePersistentVersion(Object oKey, Comparable ver)
oKey
- the key in its external ("real") formatver
- the new version to store; null implies removepublic NamedCache getTransientVersionCache()
protected void updateTransientVersion(Object oKey, Comparable ver)
oKey
- the key in its external ("real") formatver
- the new version to store; null implies removepublic boolean isManagingTransientVersion()