Top Description Fields Constructors Methods
org.eclipse.persistence.descriptors.invalidation

public Class TimeToLiveCacheInvalidationPolicy

extends CacheInvalidationPolicy
Class Inheritance
Imports
org.eclipse.persistence.internal.identitymaps.CacheKey, org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy

PUBLIC: A CacheInvalidationPolicy which allows objects to live for a specific amount of time after they are read. A TimeToLiveCacheInvalidationPolicy is instantiated with a specific number of milliseconds. This represents how long after an object is read it will expire.
See Also
CacheInvalidationPolicy

Field Summary

Modifier and TypeField and Description
protected long
timeToLive

Number of milliseconds before invalidation.

Inherited from org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy:
isInvalidationRandomizedNO_EXPIRYrandomshouldRefreshInvalidObjectsOnCloneshouldUpdateReadTimeOnUpdate

Constructor Summary

AccessConstructor and Description
public
TimeToLiveCacheInvalidationPolicy()

INTERNAL: Default Constructor for Project XML Unless the timeToLive is set by method, objects will expire immediately

public
TimeToLiveCacheInvalidationPolicy(long
the number of milliseconds an object affected by this policy will live.
timeToLive
)

PUBLIC: Construct a TimeToLiveCacheInvalidationPolicy

Method Summary

Modifier and TypeMethod and Description
public Object
clone()

Overrides org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy.clone.

Creates and returns a copy of this object.
public long
public long
getTimeToLive()

PUBLIC: Return the time-to-live specified for this policy.

public boolean
isInvalidated(CacheKey key, long currentTimeMillis)

Implements abstract org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy.isInvalidated.

INTERNAL: Return true if this object is set as invalid or has expired.
public void
setTimeToLive(long timeToLive)

PUBLIC: Set the time-to-live specified by this policy.

Inherited from org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy:
getRemainingValidTimeinitializeisInvalidatedisInvalidationRandomizedsetIsInvalidationRandomizedsetShouldRefreshInvalidObjectsOnClonesetShouldUpdateReadTimeOnUpdateshouldRefreshInvalidObjectsOnCloneshouldUpdateReadTimeOnUpdate

Field Detail

timeToLiveback to summary
protected long timeToLive

Number of milliseconds before invalidation.

Constructor Detail

TimeToLiveCacheInvalidationPolicyback to summary
public TimeToLiveCacheInvalidationPolicy()

INTERNAL: Default Constructor for Project XML Unless the timeToLive is set by method, objects will expire immediately

TimeToLiveCacheInvalidationPolicyback to summary
public TimeToLiveCacheInvalidationPolicy(long timeToLive)

PUBLIC: Construct a TimeToLiveCacheInvalidationPolicy

Parameters
timeToLive:long

the number of milliseconds an object affected by this policy will live.

Method Detail

cloneback to summary
public Object clone()

Overrides org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy.clone.

Doc from java.lang.Object.clone.

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

x.clone() != x
will be true, and that the expression:
x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified.

Returns:Object

a clone of this instance.

Annotations
@Override
getExpiryTimeInMillisback to summary
public long getExpiryTimeInMillis(CacheKey key)

Implements abstract org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy.getExpiryTimeInMillis.

INTERNAL: Return the next expiry time.

Annotations
@Override
getTimeToLiveback to summary
public long getTimeToLive()

PUBLIC: Return the time-to-live specified for this policy.

isInvalidatedback to summary
public boolean isInvalidated(CacheKey key, long currentTimeMillis)

Implements abstract org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy.isInvalidated.

INTERNAL: Return true if this object is set as invalid or has expired.

Annotations
@Override
setTimeToLiveback to summary
public void setTimeToLive(long timeToLive)

PUBLIC: Set the time-to-live specified by this policy.