Class AbstractJournalScheme<T>
- java.lang.Object
-
- com.tangosol.coherence.config.scheme.AbstractScheme
-
- com.tangosol.coherence.config.scheme.AbstractServiceScheme<D>
-
- com.tangosol.coherence.config.scheme.AbstractCachingScheme
-
- com.tangosol.coherence.config.scheme.AbstractLocalCachingScheme<T>
-
- com.tangosol.coherence.config.scheme.AbstractJournalScheme<T>
-
- All Implemented Interfaces:
BackingMapManagerBuilder
,BuilderCustomization<T>
,MapBuilder
,NamedCacheBuilder
,ServiceBuilder
,CachingScheme
,ObservableCachingScheme
,Scheme
,ServiceScheme
- Direct Known Subclasses:
FlashJournalScheme
,RamJournalScheme
public abstract class AbstractJournalScheme<T> extends AbstractLocalCachingScheme<T>
TheAbstractJournalScheme
contains functionality common to all Journal schemes.- Since:
- Coherence 12.1.2
- Author:
- pfm 2011.11.30
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.tangosol.coherence.config.builder.MapBuilder
MapBuilder.Dependencies
-
-
Field Summary
-
Fields inherited from class com.tangosol.coherence.config.scheme.AbstractServiceScheme
m_serviceDependencies
-
Fields inherited from interface com.tangosol.coherence.config.scheme.ServiceScheme
DELIM_APPLICATION_SCOPE, DELIM_DOMAIN_PARTITION
-
-
Constructor Summary
Constructors Constructor Description AbstractJournalScheme()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description EvictionPolicyBuilder
getEvictionPolicyBuilder()
Return the EvictionPolicyBuilder used to build an EvictionPolicy.Seconds
getExpiryDelay(ParameterResolver resolver)
Return the amount of time since the last update that entries are kept by the cache before being expired.Units
getHighUnits(ParameterResolver resolver)
Return the limit of cache size.Units
getLowUnits(ParameterResolver resolver)
Return the lowest number of units that a cache is pruned down to when pruning takes place.UnitCalculatorBuilder
getUnitCalculatorBuilder()
Return the UnitCalculatorBuilder used to build a UnitCalculator.int
getUnitFactor(ParameterResolver resolver)
Return the unit-factor element specifies the factor by which the units, low-units and high-units properties are adjusted.void
setEvictionPolicyBuilder(EvictionPolicyBuilder bldr)
Set the EvictionPolicyBuilder.void
setExpiryDelay(Expression<Seconds> expr)
Set the expiry delay.void
setHighUnits(Expression<Units> expr)
Set the high units.void
setLowUnits(Expression<Units> expr)
Set the low units.void
setUnitCalculatorBuilder(UnitCalculatorBuilder builder)
Set the UnitCalculatorBuilder.void
setUnitFactor(Expression<Integer> expr)
Set the unit factor.-
Methods inherited from class com.tangosol.coherence.config.scheme.AbstractLocalCachingScheme
getCustomBuilder, getEventInterceptorBuilders, getServiceType, isRunningClusterNeeded, setCustomBuilder
-
Methods inherited from class com.tangosol.coherence.config.scheme.AbstractCachingScheme
establishMapListeners, getDefaultParameterResolver, getListenerBuilder, realizeBackingMapManager, realizeCache, realizeMap, setListenerBuilder, validate
-
Methods inherited from class com.tangosol.coherence.config.scheme.AbstractServiceScheme
ensureService, getDefaultServiceName, getScopedServiceName, getScopeName, getServiceBuilder, getServiceDependencies, getServiceName, getXml, injectScopeNameIntoService, isAutoStart, realizeService, setAutoStart, setScopeName, setServiceDependencies, setServiceName, setXml
-
Methods inherited from class com.tangosol.coherence.config.scheme.AbstractScheme
getSchemeName, isAnonymous, setSchemeName, validate
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.tangosol.coherence.config.scheme.Scheme
getSchemeName, isAnonymous
-
Methods inherited from interface com.tangosol.coherence.config.scheme.ServiceScheme
getScopedServiceName, getServiceBuilder, getServiceName, isAutoStart
-
-
-
-
Method Detail
-
getEvictionPolicyBuilder
public EvictionPolicyBuilder getEvictionPolicyBuilder()
Return the EvictionPolicyBuilder used to build an EvictionPolicy.- Returns:
- the builder
-
setEvictionPolicyBuilder
@Injectable("eviction-policy") public void setEvictionPolicyBuilder(EvictionPolicyBuilder bldr)
Set the EvictionPolicyBuilder.- Parameters:
bldr
- the EvictionPolicyBuilder
-
getExpiryDelay
public Seconds getExpiryDelay(ParameterResolver resolver)
Return the amount of time since the last update that entries are kept by the cache before being expired. Entries that have expired are not accessible and are evicted the next time a client accesses the cache. Any attempt to read an expired entry results in a reloading of the entry from the CacheStore.- Parameters:
resolver
- the ParameterResolver- Returns:
- the expiry delay
-
setExpiryDelay
@Injectable public void setExpiryDelay(Expression<Seconds> expr)
Set the expiry delay.- Parameters:
expr
- the expiry delay expression
-
getHighUnits
public Units getHighUnits(ParameterResolver resolver)
Return the limit of cache size. Contains the maximum number of units that can be placed n the cache before pruning occurs. An entry is the unit of measurement, unless it is overridden by an alternate unit-calculator. When this limit is exceeded, the cache begins the pruning process, evicting entries according to the eviction policy. Legal values are positive integers or zero. Zero implies no limit.- Parameters:
resolver
- the ParameterResolver- Returns:
- the high units
-
setHighUnits
@Injectable public void setHighUnits(Expression<Units> expr)
Set the high units.- Parameters:
expr
- the high units expression
-
getLowUnits
public Units getLowUnits(ParameterResolver resolver)
Return the lowest number of units that a cache is pruned down to when pruning takes place. A pruning does not necessarily result in a cache containing this number of units, however a pruning never results in a cache containing less than this number of units. An entry is the unit of measurement, unless it is overridden by an alternate unit-calculator. When pruning occurs entries continue to be evicted according to the eviction policy until this size. Legal values are positive integers or zero. Zero implies the default. The default value is 75% of the high-units setting (that is, for a high-units setting of 1000 the default low-units is 750).- Parameters:
resolver
- the ParameterResolver- Returns:
- the low units
-
setLowUnits
@Injectable public void setLowUnits(Expression<Units> expr)
Set the low units.- Parameters:
expr
- the low units
-
getUnitCalculatorBuilder
public UnitCalculatorBuilder getUnitCalculatorBuilder()
Return the UnitCalculatorBuilder used to build a UnitCalculator.- Returns:
- the unit calculator
-
setUnitCalculatorBuilder
@Injectable("unit-calculator") public void setUnitCalculatorBuilder(UnitCalculatorBuilder builder)
Set the UnitCalculatorBuilder.- Parameters:
builder
- the UnitCalculatorBuilder
-
getUnitFactor
public int getUnitFactor(ParameterResolver resolver)
Return the unit-factor element specifies the factor by which the units, low-units and high-units properties are adjusted. Using a BINARY unit calculator, for example, the factor of 1048576 could be used to count megabytes instead of bytes.- Parameters:
resolver
- the ParameterResolver- Returns:
- the unit factor
-
setUnitFactor
@Injectable public void setUnitFactor(Expression<Integer> expr)
Set the unit factor.- Parameters:
expr
- the unit factor expression
-
-