org.infinispan.container.entries
Interface InternalCacheEntry

All Superinterfaces:
CacheEntry, Cloneable, Map.Entry<Object,Object>
All Known Implementing Classes:
AbstractInternalCacheEntry, ImmortalCacheEntry, MortalCacheEntry, TransientCacheEntry, TransientMortalCacheEntry

public interface InternalCacheEntry
extends CacheEntry, Cloneable

Interface for internal cache entries that expose whether an entry has expired.

Since:
4.0
Author:
Manik Surtani

Method Summary
 boolean canExpire()
           
 InternalCacheEntry clone()
           
 long getCreated()
           
 long getExpiryTime()
          Only used with entries that have a lifespan, this determines when an entry is due to expire.
 long getLastUsed()
           
 boolean isExpired()
           
 void setLifespan(long lifespan)
          Sets the lifespan of the entry.
 void setMaxIdle(long maxIdle)
          Sets the maximum idle time of the entry.
 InternalCacheValue toInternalCacheValue()
          Creates a representation of this entry as an InternalCacheValue.
 void touch()
          Updates access timestamps on this instance
 
Methods inherited from interface org.infinispan.container.entries.CacheEntry
commit, getKey, getLifespan, getMaxIdle, getValue, isChanged, isCreated, isNull, isRemoved, isValid, rollback, setCreated, setRemoved, setValid, setValue
 
Methods inherited from interface java.util.Map.Entry
equals, hashCode
 

Method Detail

isExpired

boolean isExpired()
Returns:
true if the entry has expired; false otherwise

canExpire

boolean canExpire()
Returns:
true if the entry can expire, false otherwise

setMaxIdle

void setMaxIdle(long maxIdle)
Sets the maximum idle time of the entry.

Specified by:
setMaxIdle in interface CacheEntry
Parameters:
maxIdle - maxIdle to set

setLifespan

void setLifespan(long lifespan)
Sets the lifespan of the entry.

Specified by:
setLifespan in interface CacheEntry
Parameters:
lifespan - lifespan to set

getCreated

long getCreated()
Returns:
timestamp when the entry was created

getLastUsed

long getLastUsed()
Returns:
timestamp when the entry was last used

getExpiryTime

long getExpiryTime()
Only used with entries that have a lifespan, this determines when an entry is due to expire.

Returns:
timestamp when the entry is due to expire, or -1 if it doesn't have a lifespan

touch

void touch()
Updates access timestamps on this instance


toInternalCacheValue

InternalCacheValue toInternalCacheValue()
Creates a representation of this entry as an InternalCacheValue. The main purpose of this is to provide a representation that does not have a reference to the key. This is useful in situations where the key is already known or stored elsewhere, making serialization and deserialization more efficient.

Note that this should not be used to optimize memory overhead, since the saving of an additional reference to a key (a single object reference) does not warrant the cost of constructing an InternalCacheValue. This only makes sense when marshalling is involved, since the cost of marshalling the key again can be sidestepped using an InternalCacheValue if the key is already known/marshalled.

Returns:
a new InternalCacheValue encapsulating this InternalCacheEntry's value and expiration information.

clone

InternalCacheEntry clone()

Google Analytics

Copyright © 2010 JBoss, a division of Red Hat. All Rights Reserved.