com.ibm.websphere.cache
Interface CacheEntry
public interface CacheEntry
A CacheEntry is a struct object that holds the
cache ID and value, as well as metadata for caching.
The information in these variables is obtained from the
EntryInfo object used when the entry was cached.
Field Summary |
static int |
CACHE_TYPE_DEFAULT
Default type of a cache entry. |
static int |
CACHE_TYPE_JAXRPC
This type of cache entry is is used internally by Dynamic Cache for
when caching webservices. |
Method Summary |
boolean |
equals(java.lang.Object object)
the default equals method. |
void |
finish()
Call the finish() method when you no longer need this
CacheEntry. |
java.util.Enumeration |
getAliasList()
Returns the alias list. |
int |
getCacheType()
Returns the type of CacheEntry (CACHE_TYPE_DEFAULT or CACHE_TYPE_JAXRPC)
ALL implementors of this method other than Dynacache should return CACHE_TYPE_DEFAULT
for this method. |
long |
getCacheValueSize()
Returns the best-effort size of the cache entry's value. |
long |
getCreationTime()
Returns the time of the entry was first created. |
java.util.Enumeration |
getDataIds()
Returns all IDs (cache IDs and data IDs) that this entry
depends on for invalidation. |
byte[] |
getDisplayValue()
Returns the entry's value in a displayable format. |
long |
getExpirationTime()
Returns the absolute time when the entry should expire. |
java.lang.String |
getExternalCacheGroupId()
Returns the ExternalCacheGroup name this the cache entry belongs too. |
java.lang.String |
getId()
Returns the unique identifier of this cached entry. |
java.lang.Object |
getIdObject()
This method gets the unique identifier of this cached entry. |
int |
getPriority()
Returns the priority of this cache entry, which
determines how long the entry will stay in cache
when it is not being used. |
int |
getSharingPolicy()
Returns the sharing policy of this entry. |
java.util.Enumeration |
getTemplates()
Returns all templates that this entry depends on for invalidation. |
int |
getTimeLimit()
Returns the maximum interval of time in seconds
that the entry is allowed to stay in the cache. |
long |
getTimeStamp()
Returns the creation time of this entry. |
java.lang.Object |
getUserMetaData()
Returns the user metadata. |
long |
getValidatorExpirationTime()
Returns the validator expiration time of the entry in the cache
The validator expiration time along with the expiration time
control the state of the entry in the cache. |
java.lang.Object |
getValue()
Returns the entry's value. |
int |
hashCode()
the default hashcode method of the cache entry. |
boolean |
isBatchEnabled()
Deprecated. The updates for Push or Push-Pull sharing policies are
always done in an asynchronous batch mode. It always
returns true. |
boolean |
isInvalid()
Is this entry an invalid entry? |
boolean |
prepareForSerialization()
This method will be called before serialization of the CacheEntry. |
void |
refreshEntry()
This mimics a cache Hit, refreshing an entries spot in the replacement algorithm. |
java.lang.String |
toString()
default implementation of CacheEntry |
CACHE_TYPE_DEFAULT
static final int CACHE_TYPE_DEFAULT
- Default type of a cache entry. All cache provider entries are of this type.
- See Also:
- Constant Field Values
CACHE_TYPE_JAXRPC
static final int CACHE_TYPE_JAXRPC
- This type of cache entry is is used internally by Dynamic Cache for
when caching webservices. Not to be used by cache providers.
- See Also:
- Constant Field Values
getTemplates
java.util.Enumeration getTemplates()
- Returns all templates that this entry depends on for invalidation.
For a JSP/servlet, a template is the URI for this entry.
- For a top-level entry (eg, a JSP/Servlet that is
externally requested), this is obtained from the HTTP
request object's URL. It can be set either by
the server or by the top-level JSP/Servlet.
- For a contained entry, this is the JSP/Servlet
file name URL (the parameter that would be used
in the callPage method). It can be set either by
the JSP/Servlet it names or its containing JSP/Servlet,
plus other information from the request object.
- Returns:
- An Enumeration of the templates.
getDataIds
java.util.Enumeration getDataIds()
- Returns all IDs (cache IDs and data IDs) that this entry
depends on for invalidation. Its elements are Strings.
They are the identifiers used in the invalidateById methods
to invalidate all cache entries having a dependency on these IDs.
Data IDs must be unique within the same scope as cache IDs.
- Returns:
- An Enumeration of the IDs.
getTimeStamp
long getTimeStamp()
- Returns the creation time of this entry.
- Returns:
- The creation timestamp.
equals
boolean equals(java.lang.Object object)
- the default equals method.
It compares cache IDs.
- Overrides:
equals
in class java.lang.Object
- Returns:
- True if they are equal.
hashCode
int hashCode()
- the default hashcode method of the cache entry.
- Overrides:
hashCode
in class java.lang.Object
- Returns:
- The hashCode of the cache ID.
getTimeLimit
int getTimeLimit()
- Returns the maximum interval of time in seconds
that the entry is allowed to stay in the cache.
The entry may be discarded via LRU replacement prior to this time.
A negative value indicates no time limit.
- Returns:
- The time limit.
getExpirationTime
long getExpirationTime()
- Returns the absolute time when the entry should expire.
The entry may be discarded via LRU replacement prior to this time.
A negative value indicates no expiration time.
- Returns:
- The expiration time.
getPriority
int getPriority()
- Returns the priority of this cache entry, which
determines how long the entry will stay in cache
when it is not being used.
A larger priority gives an entry a longer time in the
cache.
The value of priority should be based on the ratio of
the cost of computing the entry to the cost of
the memory in the cache (the size of the entry).
The default is 1.
- Returns:
- This entry's priority.
getSharingPolicy
int getSharingPolicy()
- Returns the sharing policy of this entry. In a
multi-JVM environment, this indicates whether the cache entry
should be EntryInfo.NOT_SHARED, EntryInfo.SHARED_PUSH_PULL or
EntryInfo.SHARED_PUSH. The default is NOT_SHARED.
- Returns:
- The sharing policy.
isBatchEnabled
boolean isBatchEnabled()
- Deprecated. The updates for Push or Push-Pull sharing policies are
always done in an asynchronous batch mode. It always
returns true.
- In a multi-JVM environment, this indicates whether updates to the
cache entry (when using EntryInfo.SHARED_PUSH) will be written out
immediately or in a batched, asynchronous fashion.
- Returns:
- True if batch is enabled, false otherwise.
getId
java.lang.String getId()
- Returns the unique identifier of this cached entry.
It must be unique within the scope of the group of Cache instances.
Having this in the CacheEntry allows an entry obtained
via the LRU array to know how to find it in the entryHashtable.
- Returns:
- The String ID of this CacheEntry.
getValue
java.lang.Object getValue()
- Returns the entry's value.
- Returns:
- The enrty's value.
getDisplayValue
byte[] getDisplayValue()
- Returns the entry's value in a displayable format.
- Returns:
- The entry's value.
refreshEntry
void refreshEntry()
- This mimics a cache Hit, refreshing an entries spot in the replacement algorithm.
getAliasList
java.util.Enumeration getAliasList()
- Returns the alias list.
- Returns:
- The alias list.
getUserMetaData
java.lang.Object getUserMetaData()
- Returns the user metadata.
- Returns:
- The user metadata.
finish
void finish()
- Call the finish() method when you no longer need this
CacheEntry. This will allow any NIO buffers to be released
when the CacheEntry is removed from cache.
getCacheValueSize
long getCacheValueSize()
- Returns the best-effort size of the cache entry's value.
- Returns:
- The best-effort determination of the size of the cache entry's value. If the size
cannot be determined, the return value is -1;
isInvalid
boolean isInvalid()
- Is this entry an invalid entry?
An invalid entry is like a zombie i.e. the entry's age is beyond its validator expiration time
and before its real expiration time.
Returns false if the validator expiration time was not set on the CacheEntry.
Returns true if the validator expiration time < current time < real expiration time.
- Returns:
- boolean to indicate the entry invalid or not.
getCreationTime
long getCreationTime()
- Returns the time of the entry was first created.
getIdObject
java.lang.Object getIdObject()
- This method gets the unique identifier of this cached entry.
It must be unique within the scope of a Cache Instance
- Returns:
- The Object representation of the ID of this Cache Entry.
getCacheType
int getCacheType()
- Returns the type of CacheEntry (CACHE_TYPE_DEFAULT or CACHE_TYPE_JAXRPC)
ALL implementors of this method other than Dynacache should return CACHE_TYPE_DEFAULT
for this method.
- Returns:
- cache type
getValidatorExpirationTime
long getValidatorExpirationTime()
- Returns the validator expiration time of the entry in the cache
The validator expiration time along with the expiration time
control the state of the entry in the cache.
- Returns:
- long the current validator expiration time in milliseconds
prepareForSerialization
boolean prepareForSerialization()
- This method will be called before serialization of the CacheEntry.
The implementor of this method returns a boolean if this CacheEntry
for some reason cannot be serialized
- Returns:
- true - The value was serialized
false - The value can not be serialized.
toString
java.lang.String toString()
- default implementation of CacheEntry
- Overrides:
toString
in class java.lang.Object
- Returns:
- The string representation of the cache entry.
getExternalCacheGroupId
java.lang.String getExternalCacheGroupId()
- Returns the
ExternalCacheGroup
name this the cache entry belongs too.
- Returns:
- null of this cache entry is not cached externally