Class CreatedExpiryPolicy
- java.lang.Object
-
- javax.cache.expiry.CreatedExpiryPolicy
-
- All Implemented Interfaces:
Serializable
,ExpiryPolicy
public final class CreatedExpiryPolicy extends Object implements ExpiryPolicy, Serializable
AnExpiryPolicy
that defines the expiryDuration
of a Cache Entry based on when it was created. An update does not reset the expiry time.- Since:
- 1.0
- Author:
- Greg Luck, Brian Oliver
- See Also:
ExpiryPolicy
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static long
serialVersionUID
The serialVersionUID required forSerializable
.
-
Constructor Summary
Constructors Constructor Description CreatedExpiryPolicy(Duration expiryDuration)
Constructs anCreatedExpiryPolicy
ExpiryPolicy
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object object)
static Factory<ExpiryPolicy>
factoryOf(Duration duration)
Obtains aFactory
for a CreatedExpiryPolicy
.Duration
getExpiryForAccess()
Gets theDuration
before an accessed Cache.Entry is considered expired.Duration
getExpiryForCreation()
Gets theDuration
before a newly created Cache.Entry is considered expired.Duration
getExpiryForUpdate()
Gets theDuration
before an updated Cache.Entry is considered expired.int
hashCode()
-
-
-
Field Detail
-
serialVersionUID
public static final long serialVersionUID
The serialVersionUID required forSerializable
.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CreatedExpiryPolicy
public CreatedExpiryPolicy(Duration expiryDuration)
Constructs anCreatedExpiryPolicy
ExpiryPolicy
.- Parameters:
expiryDuration
- theDuration
a Cache Entry should exist be before it expires after being modified
-
-
Method Detail
-
factoryOf
public static Factory<ExpiryPolicy> factoryOf(Duration duration)
Obtains aFactory
for a CreatedExpiryPolicy
.- Parameters:
duration
- The expiry duration- Returns:
- a
Factory
for a CreatedExpiryPolicy
.
-
getExpiryForCreation
public Duration getExpiryForCreation()
Gets theDuration
before a newly created Cache.Entry is considered expired.This method is called by a caching implementation after a Cache.Entry is created, but before a Cache.Entry is added to a cache, to determine the
Duration
before an entry expires. If aDuration.ZERO
is returned the new Cache.Entry is considered to be already expired and will not be added to the Cache.Should an exception occur while determining the Duration, an implementation specific default
Duration
will be used.- Specified by:
getExpiryForCreation
in interfaceExpiryPolicy
- Returns:
- the new
Duration
before a created entry expires
-
getExpiryForAccess
public Duration getExpiryForAccess()
Gets theDuration
before an accessed Cache.Entry is considered expired.This method is called by a caching implementation after a Cache.Entry is accessed to determine the
Duration
before an entry expires. If aDuration.ZERO
is returned a Cache.Entry will be considered immediately expired. Returningnull
will result in no change to the previously understood expiryDuration
.Should an exception occur while determining the Duration, an implementation specific default Duration will be used.
- Specified by:
getExpiryForAccess
in interfaceExpiryPolicy
- Returns:
- the new
Duration
before an accessed entry expires
-
getExpiryForUpdate
public Duration getExpiryForUpdate()
Gets theDuration
before an updated Cache.Entry is considered expired.This method is called by the caching implementation after a Cache.Entry is updated to determine the
Duration
before the updated entry expires. If aDuration.ZERO
is returned a Cache.Entry is considered immediately expired. Returningnull
will result in no change to the previously understood expiryDuration
.Should an exception occur while determining the Duration, an implementation specific default Duration will be used.
- Specified by:
getExpiryForUpdate
in interfaceExpiryPolicy
- Returns:
- the new
Duration
before an updated entry expires
-
-