Spring Data for VMware GemFire
Class ExpirationConfiguration.ExpirationPolicyMetaData
java.lang.Object
org.springframework.data.gemfire.config.annotation.ExpirationConfiguration.ExpirationPolicyMetaData
- All Implemented Interfaces:
ExpirationConfiguration.ExpirationPolicyConfigurer
- Enclosing class:
- ExpirationConfiguration
protected static class ExpirationConfiguration.ExpirationPolicyMetaData
extends Object
implements ExpirationConfiguration.ExpirationPolicyConfigurer
ExpirationConfiguration.ExpirationPolicyMetaData is a ExpirationConfiguration.ExpirationPolicyConfigurer implementation that encapsulates
the expiration configuration meta-data (e.g. expiration timeout and action) necessary to configure
a Regions's expiration policy and behavior.
This class is meant to capture the expiration configuration meta-data specified in the EnableExpiration.ExpirationPolicy
nested annotation in the application-level EnableExpiration annotation.-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedExpirationPolicyMetaData(int timeout, ExpirationActionType action, Set<String> regionNames, Set<EnableExpiration.ExpirationType> types) Constructs an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given expiration policy configuraiton meta-data andRegionexpiration settings.protectedExpirationPolicyMetaData(org.apache.geode.cache.ExpirationAttributes expirationAttributes, Set<String> regionNames, Set<EnableExpiration.ExpirationType> types) Constructs an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given expiration policy configuraiton meta-data andRegionexpiration settings. -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanDetermines whether the givenObject(e.g.protected booleanDetermines whether to apply this expiration policy to the givenRegionidentified by name.protected booleanaccepts(org.apache.geode.cache.Region<?, ?> region) Determines whether the givenRegionis accepted for Eviction policy configuration.Configures the expiration policy for the givenRegion.org.apache.geode.cache.Region<?,?> configure(org.apache.geode.cache.Region<?, ?> region) Configures the expiration policy for the givenRegion.protected org.apache.geode.cache.ExpirationAttributesReturns the defaultExpirationAttributes.protected static ExpirationConfiguration.ExpirationPolicyMetaDatafrom(org.springframework.core.annotation.AnnotationAttributes expirationPolicyAttributes) Factory method to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the givenAnnotationAttributesfrom the nestedEnableExpiration.ExpirationPolicyannotation specified in an application-levelEnableExpirationannotation.protected static ExpirationConfiguration.ExpirationPolicyMetaDatafrom(EnableExpiration.ExpirationPolicy expirationPolicy) Factory method to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given attribute values from the nestedEnableExpiration.ExpirationPolicyannotation specified in an application-levelEnableExpirationannotation.protected static ExpirationConfiguration.ExpirationPolicyMetaDataFactory method to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatausing default expiration policy settings.protected booleanDetermines whether Idle Timeout Expiration (TTI) was configured for this expiration policy.protected booleanDetermines whether Time-To-Live Expiration (TTL) was configured for this expiration policy.protected static org.apache.geode.cache.ExpirationAttributesnewExpirationAttributes(int timeout, org.apache.geode.cache.ExpirationAction action) Factory method used to construct a new instance of theExpirationAttributesinitialized with the given expiration timeout and action that is taken when anRegionentry times out.protected static org.apache.geode.cache.ExpirationAttributesnewExpirationAttributes(int timeout, ExpirationActionType action) Factory method used to construct a new instance of theExpirationAttributesinitialized with the given expiration timeout and action that is taken when anRegionentry times out.protected static ExpirationConfiguration.ExpirationPolicyMetaDatanewExpirationPolicyMetaData(int timeout, ExpirationActionType action, String[] regionNames, EnableExpiration.ExpirationType[] types) Factory method used to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given expiration policy meta-data.protected static ExpirationActionTyperesolveAction(ExpirationActionType action) Resolves theExpirationActionused in the expiration policy.protected StringresolveRegionName(Object regionFactoryBean) Resolves the name of a givenRegionfrom the correspondingResolvableRegionFactoryBeanobject.protected static intresolveTimeout(int timeout) Resolves the expiration timeout used in the expiration policy.protected ExpiringRegionFactoryBean<?,?> setExpirationAttributes(ExpiringRegionFactoryBean<?, ?> regionFactoryBean) Configures the Expiration policies on the targetedExpiringRegionFactoryBean, which may be either aPeerRegionFactoryBeanorClientRegionFactoryBean.
-
Field Details
-
ALL_REGIONS
-
-
Constructor Details
-
ExpirationPolicyMetaData
protected ExpirationPolicyMetaData(int timeout, ExpirationActionType action, Set<String> regionNames, Set<EnableExpiration.ExpirationType> types) Constructs an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given expiration policy configuraiton meta-data andRegionexpiration settings.- Parameters:
timeout- int value indicating the expiration timeout in seconds.action- expiration action taken when theRegionentry expires.regionNames- names ofRegionsconfigured with the expiration policy meta-data.types- type of expiration algorithm/behavior (TTI/TTL) configured for theRegion.- Throws:
IllegalArgumentException- if theEnableExpiration.ExpirationTypeSetis empty.- See Also:
-
ExpirationPolicyMetaData
protected ExpirationPolicyMetaData(org.apache.geode.cache.ExpirationAttributes expirationAttributes, Set<String> regionNames, Set<EnableExpiration.ExpirationType> types) Constructs an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given expiration policy configuraiton meta-data andRegionexpiration settings.- Parameters:
expirationAttributes-ExpirationAttributesspecifying the expiration timeout in seconds and expiration action taken when theRegionentry expires.regionNames- names ofRegionsconfigured with the expiration policy meta-data.types- type of expiration algorithm/behaviors (TTI/TTL) configured for theRegion.- Throws:
IllegalArgumentException- if theEnableExpiration.ExpirationTypeSetis empty.- See Also:
-
EnableExpiration.ExpirationTypeExpirationAttributes
-
-
Method Details
-
from
protected static ExpirationConfiguration.ExpirationPolicyMetaData from(org.springframework.core.annotation.AnnotationAttributes expirationPolicyAttributes) Factory method to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the givenAnnotationAttributesfrom the nestedEnableExpiration.ExpirationPolicyannotation specified in an application-levelEnableExpirationannotation.- Parameters:
expirationPolicyAttributes-AnnotationAttributesfrom aEnableExpiration.ExpirationPolicyannotation.- Returns:
- an instance of the
ExpirationConfiguration.ExpirationPolicyMetaDatainitialized fromEnableExpiration.ExpirationPolicyAnnotationAttributes. - Throws:
IllegalArgumentException- ifAnnotationAttributes.annotationType()is not assignable toEnableExpiration.ExpirationPolicy.- See Also:
-
newExpirationPolicyMetaData(int, ExpirationActionType, String[], ExpirationType[])AnnotationAttributes
-
from
protected static ExpirationConfiguration.ExpirationPolicyMetaData from(EnableExpiration.ExpirationPolicy expirationPolicy) Factory method to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given attribute values from the nestedEnableExpiration.ExpirationPolicyannotation specified in an application-levelEnableExpirationannotation.- Parameters:
expirationPolicy-EnableExpiration.ExpirationPolicyannotation containing the attribute values used to initialize theExpirationConfiguration.ExpirationPolicyMetaDatainstance.- Returns:
- an instance of the
ExpirationConfiguration.ExpirationPolicyMetaDatainitialized fromEnableExpiration.ExpirationPolicyattributes values. - See Also:
-
fromDefaults
Factory method to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatausing default expiration policy settings. -
newExpirationAttributes
protected static org.apache.geode.cache.ExpirationAttributes newExpirationAttributes(int timeout, ExpirationActionType action) Factory method used to construct a new instance of theExpirationAttributesinitialized with the given expiration timeout and action that is taken when anRegionentry times out.- Parameters:
timeout- int value indicating the expiration timeout in seconds.action- expiration action to take when theRegionentry times out.- Returns:
- a new instance of
ExpirationAttributesinitialized with the given expiration timeout and action. - See Also:
-
ExpirationAttributesnewExpirationAttributes(int, ExpirationAction)
-
newExpirationAttributes
protected static org.apache.geode.cache.ExpirationAttributes newExpirationAttributes(int timeout, org.apache.geode.cache.ExpirationAction action) Factory method used to construct a new instance of theExpirationAttributesinitialized with the given expiration timeout and action that is taken when anRegionentry times out.- Parameters:
timeout- int value indicating the expiration timeout in seconds.action- expiration action to take when theRegionentry times out.- Returns:
- a new instance of
ExpirationAttributesinitialized with the given expiration timeout and action. - See Also:
-
ExpirationAttributes
-
newExpirationPolicyMetaData
protected static ExpirationConfiguration.ExpirationPolicyMetaData newExpirationPolicyMetaData(int timeout, ExpirationActionType action, String[] regionNames, EnableExpiration.ExpirationType[] types) Factory method used to construct an instance ofExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given expiration policy meta-data.- Parameters:
timeout- int value indicating the expiration timeout in seconds.action- expiration action taken when theRegionentry expires.regionNames- names ofRegionsconfigured with the expiration policy meta-data.types- type of expiration algorithm/behavior (TTI/TTL) configured for theRegion.- Returns:
- an instance of
ExpirationConfiguration.ExpirationPolicyMetaDatainitialized with the given expiration policy meta-data. - Throws:
IllegalArgumentException- if theEnableExpiration.ExpirationTypearray is empty.- See Also:
-
resolveAction
Resolves theExpirationActionused in the expiration policy. Defaults toExpirationActionType.INVALIDATEifactionis null.- Parameters:
action- givenExpirationActionTypeto evaluate.- Returns:
- the resolved
ExpirationActionTypeor the default ifactionis null. - See Also:
-
resolveTimeout
protected static int resolveTimeout(int timeout) Resolves the expiration timeout used in the expiration policy. Defaults to 0 iftimeoutis less than 0.- Parameters:
timeout- int value expressing the expiration timeout in seconds.- Returns:
- the resolved expiration policy timeout.
-
accepts
Determines whether the givenObject(e.g. Spring bean) is accepted for Eviction policy configuration. -
accepts
protected boolean accepts(org.apache.geode.cache.Region<?, ?> region) Determines whether the givenRegionis accepted for Eviction policy configuration.- Parameters:
region-Regionbeing evaluated as a Eviction policy configuration candidate.- Returns:
- a boolean value indicated whether the given
Regionis accepted as an Expiration policy configuration candidate. - See Also:
-
Regionaccepts(Supplier)
-
accepts
Determines whether to apply this expiration policy to the givenRegionidentified by name.- Parameters:
regionName- name of theRegionto evaluate.- Returns:
- a boolean value indicating whether the expiration policy applies to the given
Regionidentified by name.
-
isIdleTimeout
protected boolean isIdleTimeout()Determines whether Idle Timeout Expiration (TTI) was configured for this expiration policy.- Returns:
- a boolean value indicating whether Idle Timeout Expiration (TTI) was configuration for this expiration policy.
-
isTimeToLive
protected boolean isTimeToLive()Determines whether Time-To-Live Expiration (TTL) was configured for this expiration policy.- Returns:
- a boolean value indicating whether Time-To-Live Expiration (TTL) was configuration for this expiration policy.
-
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:
-
setExpirationAttributes
protected ExpiringRegionFactoryBean<?,?> setExpirationAttributes(ExpiringRegionFactoryBean<?, ?> regionFactoryBean) Configures the Expiration policies on the targetedExpiringRegionFactoryBean, which may be either aPeerRegionFactoryBeanorClientRegionFactoryBean.- Parameters:
regionFactoryBean-ExpiringRegionFactoryBeanto configure.- Returns:
- the given
ExpiringRegionFactoryBean. - See Also:
-
configure
Description copied from interface:ExpirationConfiguration.ExpirationPolicyConfigurerConfigures the expiration policy for the givenRegion.- Specified by:
configurein interfaceExpirationConfiguration.ExpirationPolicyConfigurer- Parameters:
regionBean-Regionobject who's expiration policy will be configured.- Returns:
- the given
Regionobject. - See Also:
-
Region
-
configure
public org.apache.geode.cache.Region<?,?> configure(org.apache.geode.cache.Region<?, ?> region) Description copied from interface:ExpirationConfiguration.ExpirationPolicyConfigurerConfigures the expiration policy for the givenRegion.- Specified by:
configurein interfaceExpirationConfiguration.ExpirationPolicyConfigurer- Parameters:
region-Regionwho's expiration policy will be configured.- Returns:
- the given
Region. - See Also:
-
Region
-
defaultExpirationAttributes
protected org.apache.geode.cache.ExpirationAttributes defaultExpirationAttributes()Returns the defaultExpirationAttributes.- Returns:
- an
ExpirationAttributescontaining the defaults. - See Also:
-
ExpirationAttributes
-