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(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 booleanDetermines whether the givenRegionis accepted for Eviction policy configuration.Configures the expiration policy for the givenRegion.Region<?,?> Configures the expiration policy for the givenRegion.protected ExpirationAttributesReturns the defaultExpirationAttributes.protected static ExpirationConfiguration.ExpirationPolicyMetaDatafrom(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 ExpirationAttributesnewExpirationAttributes(int timeout, 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 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(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:
-
-
Method Details
-
from
protected static ExpirationConfiguration.ExpirationPolicyMetaData from(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:
-
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 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:
-
newExpirationAttributes
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:
-
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
Determines whether the givenRegionis accepted for Eviction policy configuration. -
accepts
Determines whether to apply this expiration policy to the givenRegionidentified 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:
-
configure
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:
-
defaultExpirationAttributes
Returns the defaultExpirationAttributes.- Returns:
- an
ExpirationAttributescontaining the defaults. - See Also:
-