Spring Data for VMware GemFire
Class EvictionConfiguration.EvictionPolicyMetaData
java.lang.Object
org.springframework.data.gemfire.config.annotation.EvictionConfiguration.EvictionPolicyMetaData
- All Implemented Interfaces:
EvictionConfiguration.EvictionPolicyConfigurer
- Enclosing class:
- EvictionConfiguration
protected static class EvictionConfiguration.EvictionPolicyMetaData
extends Object
implements EvictionConfiguration.EvictionPolicyConfigurer
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedEvictionPolicyMetaData(org.apache.geode.cache.EvictionAttributes evictionAttributes) Constructs an instance ofEvictionConfiguration.EvictionPolicyMetaDatainitialized with the givenEvictionAttributesapplying to allRegions.protectedEvictionPolicyMetaData(org.apache.geode.cache.EvictionAttributes evictionAttributes, String[] regionNames) Constructs an instance ofEvictionConfiguration.EvictionPolicyMetaDatainitialized with the givenEvictionAttributesto apply to the specificRegions. -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanDetermines whether the givenObject(e.g.protected booleanDetermine whether theRegionidentified by name is accepted for Eviction policy configuration.protected booleanaccepts(org.apache.geode.cache.Region<?, ?> region) Determines whether the givenRegionis accepted for Eviction policy configuration.Configure the Eviction policy on the given SDGClientRegionFactoryBeanorPeerRegionFactoryBeanused to create an Apache GeodeRegion.org.apache.geode.cache.Region<?,?> configure(org.apache.geode.cache.Region<?, ?> region) Configures the Eviction policy of the given Apache GeodeRegion.protected static EvictionConfiguration.EvictionPolicyMetaDatafrom(org.springframework.core.annotation.AnnotationAttributes evictionPolicyAttributes, org.springframework.context.ApplicationContext applicationContext) protected static EvictionConfiguration.EvictionPolicyMetaDatafrom(EnableEviction.EvictionPolicy evictionPolicy, org.springframework.context.ApplicationContext applicationContext) protected static EvictionConfiguration.EvictionPolicyMetaDatafrom(EvictionPolicyType type, int maximum, EvictionActionType action, org.apache.geode.cache.util.ObjectSizer objectSizer, String... regionNames) protected static EvictionConfiguration.EvictionPolicyMetaDataprotected org.apache.geode.cache.EvictionAttributesReturns an instance of theEvictionAttributesspecifying the Eviction policy configuration captured in this Eviction policy meta-data.protected static org.apache.geode.cache.util.ObjectSizerresolveObjectSizer(String objectSizerName, org.springframework.context.ApplicationContext applicationContext) protected StringresolveRegionName(Object regionFactoryBean) Resolves the name of a givenRegionfrom the correspondingResolvableRegionFactoryBeanobject.protected static IntegerresolveThreshold(int maximum, EvictionPolicyType type) Resolves the Eviction policy threshold (a.k.a.protected EvictingRegionFactoryBeansetEvictionAttributes(EvictingRegionFactoryBean regionFactoryBean) Sets theEvictionAttributeson thePeerRegionFactoryBeanorClientRegionFactoryBeanused to create the targetedRegion.
-
Field Details
-
ALL_REGIONS
-
-
Constructor Details
-
EvictionPolicyMetaData
protected EvictionPolicyMetaData(org.apache.geode.cache.EvictionAttributes evictionAttributes) Constructs an instance ofEvictionConfiguration.EvictionPolicyMetaDatainitialized with the givenEvictionAttributesapplying to allRegions.- Parameters:
evictionAttributes-EvictionAttributesspecifying the Eviction policy configuration for aRegion.- See Also:
-
EvictionAttributesEvictionPolicyMetaData(EvictionAttributes, String[])
-
EvictionPolicyMetaData
protected EvictionPolicyMetaData(org.apache.geode.cache.EvictionAttributes evictionAttributes, String[] regionNames) Constructs an instance ofEvictionConfiguration.EvictionPolicyMetaDatainitialized with the givenEvictionAttributesto apply to the specificRegions.- Parameters:
evictionAttributes-EvictionAttributesspecifying the Eviction policy configuration for aRegion.regionNames- names ofRegionson which the Eviction policy is applied.- See Also:
-
EvictionAttributes
-
-
Method Details
-
from
protected static EvictionConfiguration.EvictionPolicyMetaData from(@NonNull org.springframework.core.annotation.AnnotationAttributes evictionPolicyAttributes, @NonNull org.springframework.context.ApplicationContext applicationContext) -
from
protected static EvictionConfiguration.EvictionPolicyMetaData from(EnableEviction.EvictionPolicy evictionPolicy, org.springframework.context.ApplicationContext applicationContext) -
from
protected static EvictionConfiguration.EvictionPolicyMetaData from(EvictionPolicyType type, int maximum, EvictionActionType action, org.apache.geode.cache.util.ObjectSizer objectSizer, String... regionNames) -
fromDefaults
-
resolveObjectSizer
protected static org.apache.geode.cache.util.ObjectSizer resolveObjectSizer(String objectSizerName, org.springframework.context.ApplicationContext applicationContext) -
resolveThreshold
Resolves the Eviction policy threshold (a.k.a. maximum) based on theEvictionPolicyType. For instanceEvictionPolicyType.HEAP_PERCENTAGEdoes not support maximum/threshold since the settings are determined by the GemFire/Geode cache critical heap percentage and eviction heap percentage System property settings.- Parameters:
maximum- integer value specifying the configured Eviction threshold.type-EvictionPolicyTypespecifying the type of Eviction algorithm.- Returns:
- a resolved value for the Eviction maximum/threshold.
- See Also:
-
accepts
Determines whether the givenObject(e.g. Spring bean) is accepted for Eviction policy configuration. -
accepts
protected boolean accepts(@Nullable org.apache.geode.cache.Region<?, ?> region) Determines whether the givenRegionis accepted for Eviction policy configuration.- Parameters:
region-Regionevaluated for Eviction policy configuration.- Returns:
- a boolean value indicating whether the given
Regionis accepted for Eviction policy configuration. - See Also:
-
Regionaccepts(Supplier)
-
accepts
Determine whether theRegionidentified by name is accepted for Eviction policy configuration.- Parameters:
regionName- name of theRegiontargeted for Eviction policy configuration.- Returns:
- a boolean value if the named
Regionis accepted for Eviction policy configuration.
-
resolveRegionName
Resolves the name of a givenRegionfrom the correspondingResolvableRegionFactoryBeanobject.- Parameters:
regionFactoryBean-ResolvableRegionFactoryBeanfrom which to resolve theRegionname.- Returns:
- the resolved name of the
Regioncreated from the givenResolvableRegionFactoryBean. - See Also:
-
setEvictionAttributes
protected EvictingRegionFactoryBean setEvictionAttributes(EvictingRegionFactoryBean regionFactoryBean) Sets theEvictionAttributeson thePeerRegionFactoryBeanorClientRegionFactoryBeanused to create the targetedRegion.- Parameters:
regionFactoryBean-PeerRegionFactoryBeanorClientRegionFactoryBeanon which to set theEvictionAttributesencapsulating the Eviction policy for the targetedRegion.- Returns:
- the
regionFactoryBean. - See Also:
-
getEvictionAttributes
protected org.apache.geode.cache.EvictionAttributes getEvictionAttributes()Returns an instance of theEvictionAttributesspecifying the Eviction policy configuration captured in this Eviction policy meta-data.- Returns:
- an instance of the
EvictionAttributesspecifying theRegionEviction policy configuration. - Throws:
IllegalStateException- if theEvictionAttributeswere not properly initialized.- See Also:
-
EvictionAttributes
-
configure
Description copied from interface:EvictionConfiguration.EvictionPolicyConfigurerConfigure the Eviction policy on the given SDGClientRegionFactoryBeanorPeerRegionFactoryBeanused to create an Apache GeodeRegion.- Specified by:
configurein interfaceEvictionConfiguration.EvictionPolicyConfigurer- Parameters:
regionBean-ClientRegionFactoryBeanorPeerRegionFactoryBeanused to create an Apache GeodeRegion.- Returns:
- the given
regionFactoryBean. - See Also:
-
configure
public org.apache.geode.cache.Region<?,?> configure(org.apache.geode.cache.Region<?, ?> region) Description copied from interface:EvictionConfiguration.EvictionPolicyConfigurerConfigures the Eviction policy of the given Apache GeodeRegion.- Specified by:
configurein interfaceEvictionConfiguration.EvictionPolicyConfigurer- Parameters:
region-Regionon which to configure the Eviction policy.- Returns:
- the given
Region. - See Also:
-
Region
-