public class PagedExternalScheme extends AbstractLocalCachingScheme<Map> implements BinaryStoreManagerBuilderCustomization
PagedExternalScheme
class is responsible for building a
fully configured instance of a PagedExternalCache.MapBuilder.Dependencies
m_serviceDependencies
DELIM_APPLICATION_SCOPE, DELIM_DOMAIN_PARTITION
Constructor and Description |
---|
PagedExternalScheme() |
Modifier and Type | Method and Description |
---|---|
BinaryStoreManagerBuilder |
getBinaryStoreManagerBuilder()
Obtains the
BinaryStoreManagerBuilder for the BinaryStoreManager . |
Seconds |
getPageDurationSeconds(com.tangosol.config.expression.ParameterResolver resolver)
Return the length of time that a page in the cache is current.
|
int |
getPageLimit(com.tangosol.config.expression.ParameterResolver resolver)
Return the maximum number of pages that the cache manages before older
pages are destroyed.
|
protected SerializationPagedCache |
instantiateSerializationPagedCache(BinaryStoreManager storeMgr,
int cPages,
int cPageSecs,
boolean fBinaryMap,
boolean fPassive)
Construct an SerializationPagedCache using the specified parameters.
|
protected SerializationPagedCache |
instantiateSerializationPagedCache(BinaryStoreManager storeMgr,
int cPages,
int cPageSecs,
ClassLoader loader)
Construct an SerializationPagedCache using the specified parameters.
|
Map |
realizeMap(com.tangosol.config.expression.ParameterResolver resolver,
MapBuilder.Dependencies dependencies)
Realize a
Map based on the state of the MapBuilder ,
resolvable parameters and provided MapBuilder.Dependencies . |
void |
setBinaryStoreManagerBuilder(BinaryStoreManagerBuilder bldr)
Sets the
BinaryStoreManagerBuilder for the BinaryStoreManager . |
void |
setPageDurationSeconds(com.tangosol.config.expression.Expression<Seconds> expr)
Set the page duration.
|
void |
setPageLimit(com.tangosol.config.expression.Expression<Integer> expr)
Set the page limit.
|
protected void |
validate(com.tangosol.config.expression.ParameterResolver resolver)
Validate the properties.
|
getCustomBuilder, getEventInterceptorBuilders, getServiceType, isRunningClusterNeeded, setCustomBuilder
establishMapListeners, getDefaultParameterResolver, getListenerBuilder, realizeBackingMapManager, realizeCache, setListenerBuilder
getDefaultServiceName, getScopedServiceName, getScopeName, getServiceBuilder, getServiceDependencies, getServiceName, getXml, injectScopeNameIntoService, isAutoStart, realizeService, setAutoStart, setScopeName, setServiceDependencies, setServiceName, setXml
getSchemeName, isAnonymous, setSchemeName, validate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getScopedServiceName, getServiceBuilder, getServiceName, isAutoStart
getSchemeName, isAnonymous
public Map realizeMap(com.tangosol.config.expression.ParameterResolver resolver, MapBuilder.Dependencies dependencies)
Map
based on the state of the MapBuilder
,
resolvable parameters and provided MapBuilder.Dependencies
.realizeMap
in interface MapBuilder
realizeMap
in class AbstractCachingScheme
resolver
- the ParameterResolver
dependencies
- the MapBuilder.Dependencies
for realizing the Map
Map
public BinaryStoreManagerBuilder getBinaryStoreManagerBuilder()
BinaryStoreManagerBuilder
for the BinaryStoreManager
.getBinaryStoreManagerBuilder
in interface BinaryStoreManagerBuilderCustomization
BinaryStoreManagerBuilder
public void setBinaryStoreManagerBuilder(BinaryStoreManagerBuilder bldr)
BinaryStoreManagerBuilder
for the BinaryStoreManager
.setBinaryStoreManagerBuilder
in interface BinaryStoreManagerBuilderCustomization
bldr
- the BinaryStoreManagerBuilder
public Seconds getPageDurationSeconds(com.tangosol.config.expression.ParameterResolver resolver)
resolver
- the ParameterResolver@Injectable(value="page-duration") public void setPageDurationSeconds(com.tangosol.config.expression.Expression<Seconds> expr)
expr
- the page duration expressionpublic int getPageLimit(com.tangosol.config.expression.ParameterResolver resolver)
resolver
- the ParameterResolver@Injectable public void setPageLimit(com.tangosol.config.expression.Expression<Integer> expr)
expr
- the page limit expressionprotected SerializationPagedCache instantiateSerializationPagedCache(BinaryStoreManager storeMgr, int cPages, int cPageSecs, ClassLoader loader)
This method exposes a corresponding SerializationPagedCache
constructor
and is provided for the express purpose of allowing its override.
storeMgr
- the BinaryStoreManager that provides BinaryStore
objects that the serialized objects are written tocPages
- the maximum number of pages to have active at a timecPageSecs
- the length of time, in seconds, that a 'page' is
currentloader
- the ClassLoader to use for deserializationSerializationPagedCache
protected SerializationPagedCache instantiateSerializationPagedCache(BinaryStoreManager storeMgr, int cPages, int cPageSecs, boolean fBinaryMap, boolean fPassive)
This method exposes a corresponding SerializationPagedCache
constructor
and is provided for the express purpose of allowing its override.
storeMgr
- the BinaryStoreManager that provides BinaryStore
objects that the serialized objects are written tocPages
- the maximum number of pages to have active at a timecPageSecs
- the length of time, in seconds, that a 'page' is
currentfBinaryMap
- true indicates that this map will only manage
binary keys and valuesfPassive
- true indicates that this map is a passive cache,
which means that it is just a backup of the cache
and does not actively expire dataSerializationPagedCache
protected void validate(com.tangosol.config.expression.ParameterResolver resolver)
validate
in class AbstractCachingScheme
resolver
- the ParameterResolver needed to resolve expressions