Top Description Fields Constructors Methods
javax.cache.expiry

public final Class EternalExpiryPolicy

extends Object
implements ExpiryPolicy, Serializable
Class Inheritance
All Implemented Interfaces
java.io.Serializable, javax.cache.expiry.ExpiryPolicy
Imports
javax.cache.configuration.Factory, .FactoryBuilder, java.io.Serializable

An eternal ExpiryPolicy specifies that Cache Entries won't expire. This however doesn't mean they won't be evicted if an underlying implementation needs to free-up resources where by it may choose to evict entries that are not due to expire.
Authors
Greg Luck, Brian Oliver
Since
1.0
See Also
ExpiryPolicy

Field Summary

Modifier and TypeField and Description
public static final long
serialVersionUID

The serialVersionUID required for java.io.Serializable.

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
equals(Object
the reference object with which to compare.
other
)

Overrides java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.
public static Factory<ExpiryPolicy>

Returns:

a Factory for an Eternal ExpiryPolicy.
factoryOf
()

Obtains a Factory for an Eternal ExpiryPolicy.

public Duration
getExpiryForAccess()

Implements javax.cache.expiry.ExpiryPolicy.getExpiryForAccess.

Gets the Duration before an accessed Cache.Entry is considered expired.
public Duration
getExpiryForCreation()

Implements javax.cache.expiry.ExpiryPolicy.getExpiryForCreation.

Gets the Duration before a newly created Cache.Entry is considered expired.
public Duration
getExpiryForUpdate()

Implements javax.cache.expiry.ExpiryPolicy.getExpiryForUpdate.

Gets the Duration before an updated Cache.Entry is considered expired.
public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for the object.
Inherited from java.lang.Object:
clonefinalizegetClassnotifynotifyAlltoStringwaitwaitwait

Field Detail

serialVersionUIDback to summary
public static final long serialVersionUID

The serialVersionUID required for java.io.Serializable.

Constructor Detail

EternalExpiryPolicyback to summary
public EternalExpiryPolicy()

Method Detail

equalsback to summary
public boolean equals(Object other)

Overrides java.lang.Object.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
other:Object

the reference object with which to compare.

Returns:boolean

true if this object is the same as the obj argument; false otherwise.

Annotations
@Override
factoryOfback to summary
public static Factory<ExpiryPolicy> factoryOf()

Obtains a Factory for an Eternal ExpiryPolicy.

Returns:Factory<ExpiryPolicy>

a Factory for an Eternal ExpiryPolicy.

getExpiryForAccessback to summary
public Duration getExpiryForAccess()

Implements javax.cache.expiry.ExpiryPolicy.getExpiryForAccess.

Doc from javax.cache.expiry.ExpiryPolicy.getExpiryForAccess.

Gets the Duration 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 a Duration#ZERO is returned a Cache.Entry will be considered immediately expired. Returning null will result in no change to the previously understood expiry Duration.

Should an exception occur while determining the Duration, an implementation specific default Duration will be used.

Returns:Duration

the new Duration before an accessed entry expires

Annotations
@Override
getExpiryForCreationback to summary
public Duration getExpiryForCreation()

Implements javax.cache.expiry.ExpiryPolicy.getExpiryForCreation.

Doc from javax.cache.expiry.ExpiryPolicy.getExpiryForCreation.

Gets the Duration 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 a Duration#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.

Returns:Duration

the new Duration before a created entry expires

Annotations
@Override
getExpiryForUpdateback to summary
public Duration getExpiryForUpdate()

Implements javax.cache.expiry.ExpiryPolicy.getExpiryForUpdate.

Doc from javax.cache.expiry.ExpiryPolicy.getExpiryForUpdate.

Gets the Duration 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 a Duration#ZERO is returned a Cache.Entry is considered immediately expired. Returning null will result in no change to the previously understood expiry Duration.

Should an exception occur while determining the Duration, an implementation specific default Duration will be used.

Returns:Duration

the new Duration before an updated entry expires

Annotations
@Override
hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object.

Annotations
@Override