|
IBM WebSphere Application ServerTM Release 8 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface DistributedNioMap
The DistributedNioMap is a high performance map specifically designed for storing java.nio.Buffer objects. When a cached object is being removed from cache and the cached object implements the DistributedNioMapObject interface, the DistributedNioMapObject.release() method will be called to notify the cache object it is being removed from cache.
Method Summary | |
---|---|
void |
addAlias(java.lang.Object key,
java.lang.Object[] aliasArray)
Adds an alias for the given key in the cache's mapping table. |
boolean |
addChangeListener(ChangeListener listener)
addChangeListener - adds a change listener for this DistributedMap. |
boolean |
addInvalidationListener(InvalidationListener listener)
addInvalidationListener - adds an invalidation listener for this DistributeMap. |
boolean |
addPreInvalidationListener(PreInvalidationListener listener)
addPreInvalidationListener - adds a pre-invalidation listener for this DistributeMap. |
void |
clear()
Removes all mappings from this DistributedNioMap. |
boolean |
containsKey(java.lang.Object key,
boolean includeDiskCache)
Returns true if this map contains mapping for the specified key. |
boolean |
enableListener(boolean enable)
enableListener - enable or disable the invalidation and change listener support. |
CacheEntry |
getCacheEntry(java.lang.Object key)
Returns the cache entry which maps the specified key. |
void |
invalidate(java.lang.Object key)
Invalidates the given key. |
void |
invalidate(java.lang.Object key,
boolean wait)
Invalidates the given key. |
void |
invalidate(java.lang.Object key,
boolean wait,
boolean checkPreInvalidationListener)
invalidate - invalidates the given key. |
boolean |
isEmpty(boolean includeDiskCache)
Returns true if this map contains no key-value mappings. |
void |
put(java.lang.Object key,
java.lang.Object value,
java.lang.Object userMetaData,
int priority,
int timeToLive,
int inactivityTime,
int sharingPolicy,
java.lang.Object[] dependencyIds,
java.lang.Object[] alias)
Associates the specified value with the specified key in this map. |
void |
put(java.lang.Object key,
java.lang.Object value,
java.lang.Object userMetaData,
int priority,
int timeToLive,
int inactivityTime,
int sharingPolicy,
java.lang.Object[] dependencyIds,
java.lang.Object[] alias,
boolean skipMemoryAndWriteToDisk)
Associates the specified value with the specified key in this map. |
void |
put(java.lang.Object key,
java.lang.Object value,
java.lang.Object userMetaData,
int priority,
int timeToLive,
int sharingPolicy,
java.lang.Object[] dependencyIds,
java.lang.Object[] alias)
Associates the specified value with the specified key in this map. |
CacheEntry |
putAndGet(java.lang.Object key,
java.lang.Object value,
java.lang.Object userMetaData,
int priority,
int timeToLive,
int inactivityTime,
int sharingPolicy,
java.lang.Object[] dependencyIds,
java.lang.Object[] alias)
Associates the specified value with the specified key in this map. |
CacheEntry |
putAndGet(java.lang.Object key,
java.lang.Object value,
java.lang.Object userMetaData,
int priority,
int timeToLive,
int sharingPolicy,
java.lang.Object[] dependencyIds,
java.lang.Object[] alias)
Associates the specified value with the specified key in this map. |
void |
releaseLruEntries(int numOfEntries)
Use this method to release LRU cache entries (regular objects or ByteByffers/MetaData). |
void |
removeAlias(java.lang.Object alias)
Removes an alias from the cache's mapping table. |
boolean |
removeChangeListener(ChangeListener listener)
removeChangeListener - removes a change listener for this DistributedMap. |
boolean |
removeInvalidationListener(InvalidationListener listener)
removeInvalidationListener - removes an invalidation listener for this DistributedMap. |
boolean |
removePreInvalidationListener(PreInvalidationListener listener)
removePreInvalidationListener - removes a pre-invalidation listener for this DistributedMap. |
int |
size(boolean includeDiskCache)
Returns the total number of key-value mappings. |
Method Detail |
---|
CacheEntry getCacheEntry(java.lang.Object key)
key
- key whose associated value is to be returned.
java.lang.ClassCastException
- if the key is not of an inappropriate type for
this map. (Currently supports only type String)
java.lang.NullPointerException
- key is null and this map does not
not permit null keys.void put(java.lang.Object key, java.lang.Object value, java.lang.Object userMetaData, int priority, int timeToLive, int sharingPolicy, java.lang.Object[] dependencyIds, java.lang.Object[] alias)
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.userMetaData
- userMetaData for the cache entry.priority
- the priority value for the cache entry. entries
with higher priority will remain in the cache longer
than those with a lower priority in the case of cache
overflow.timeToLive
- the time in seconds that the cache entry should remain
in the cachesharingPolicy
- how the cache entry should be shared in a cluster.
values are EntryInfo.NOT_SHARED, EntryInfo.SHARED_PUSH,
and EntryInfo.SHARED_PUSH_PULL.dependencyIds
- an optional set of dependency ids to associate with
the cache entryalias
- an optional set of alias ids to associate with the cache entry
java.lang.UnsupportedOperationException
- if the put operation is
not supported by this map.
java.lang.ClassCastException
- if the class of the specified key or value
prevents it from being stored in this map.
java.lang.IllegalArgumentException
- if some aspect of this key or value
prevents it from being stored in this map.
java.lang.NullPointerException
- this map does not permit null
keys or values, and the specified key or value is
null.DistributedNioMapObject
void put(java.lang.Object key, java.lang.Object value, java.lang.Object userMetaData, int priority, int timeToLive, int inactivityTime, int sharingPolicy, java.lang.Object[] dependencyIds, java.lang.Object[] alias)
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.userMetaData
- userMetaData for the cache entry.priority
- the priority value for the cache entry. entries
with higher priority will remain in the cache longer
than those with a lower priority in the case of cache
overflow.timeToLive
- the time in seconds that the cache entry should remain
in the cacheinactivityTime
- the time in seconds that a cache entry should remain in
the cache if not accessed. inactivityTime is reset to 0
every time an entry is accessed.sharingPolicy
- how the cache entry should be shared in a cluster.
values are EntryInfo.NOT_SHARED, EntryInfo.SHARED_PUSH,
and EntryInfo.SHARED_PUSH_PULL.dependencyIds
- an optional set of dependency ids to associate with
the cache entryalias
- an optional set of alias ids to associate with the cache entry
java.lang.UnsupportedOperationException
- if the put operation is
not supported by this map.
java.lang.ClassCastException
- if the class of the specified key or value
prevents it from being stored in this map.
java.lang.IllegalArgumentException
- if some aspect of this key or value
prevents it from being stored in this map.
java.lang.NullPointerException
- this map does not permit null
keys or values, and the specified key or value is
null.DistributedNioMapObject
void put(java.lang.Object key, java.lang.Object value, java.lang.Object userMetaData, int priority, int timeToLive, int inactivityTime, int sharingPolicy, java.lang.Object[] dependencyIds, java.lang.Object[] alias, boolean skipMemoryAndWriteToDisk) throws com.ibm.websphere.cache.exception.DynamicCacheException
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.userMetaData
- userMetaData for the cache entry.priority
- the priority value for the cache entry. entries
with higher priority will remain in the cache longer
than those with a lower priority in the case of cache
overflow.timeToLive
- the time in seconds that the cache entry should remain
in the cacheinactivityTime
- the time in seconds that a cache entry should remain in
the cache if not accessed. inactivityTime is reset to 0
every time an entry is accessed.sharingPolicy
- how the cache entry should be shared in a cluster.
values are EntryInfo.NOT_SHARED, EntryInfo.SHARED_PUSH,
and EntryInfo.SHARED_PUSH_PULL. If skipMemoryAndWriteToDisk is
set to true, the sharing policy will be set to "not-shared".dependencyIds
- an optional set of dependency ids to associate with
the cache entryalias
- an optional set of alias ids to associate with the cache entryskipMemoryAndWriteToDisk
- if true, the cache entry will not put in the memory cache but
written to disk cache directly. When getting the entry
from the disk cache, the entry will not be promoted to the memory
cache instead it will be passed it to the caller. In addition,
the entry will not be replicated to other servers. The sharing
policy will be set to "not-shared".
java.lang.UnsupportedOperationException
- if the put operation is
not supported by this map.
java.lang.ClassCastException
- if the class of the specified key or value
prevents it from being stored in this map.
java.lang.IllegalArgumentException
- if some aspect of this key or value
prevents it from being stored in this map.
java.lang.NullPointerException
- this map does not permit null
keys or values, and the specified key or value is
null.
com.ibm.websphere.cache.exception.DynamicCacheException
- When skipMemoryAndWriteToDisk is set to true, the following
exceptions which extend DynamicCacheException can occur:
(1) DiskOffloadNotEnabledException
The code detects that the disk offload feature for cache instance
is not enabled. The put operation is aborted.
(2) DiskIOException
The code detects an unrecoverable disk IO exception when putting
cache entry to the disk. The disk offload feature will be disabled.
(3) DiskSizeOverLimitException
The code detects out of disk space or the disk cache size has reached
the limit of diskCacheSizeInGB. The put operation is aborted.
(4) SerializationException
The code detects a serialization exception when serializing the cache
entry. The put operation is aborted.
(5) DiskSizeInEntriesOverLimitException
The disk cache size in entries has reached the limit of diskCacheSize.
The put operation is aborted.
(6) DiskCacheEntrySizeOverLimitException
The disk cache entry size has reached the limit of diskCacheEntrySizeInMB.
The put operation is aborted.
(7) MiscellaneousException
The code detects a runtime exception other than a disk IO exception.
The put operation is aborted.DistributedNioMapObject
,
DiskOffloadNotEnabledException
,
DiskIOException
,
DiskSizeOverLimitException
,
SerializationException
,
DiskSizeInEntriesOverLimitException
,
DiskCacheEntrySizeOverLimitException
,
MiscellaneousException
CacheEntry putAndGet(java.lang.Object key, java.lang.Object value, java.lang.Object userMetaData, int priority, int timeToLive, int sharingPolicy, java.lang.Object[] dependencyIds, java.lang.Object[] alias)
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.userMetaData
- userMetaData for the cache entry.priority
- the priority value for the cache entry. entries
with higher priority will remain in the cache longer
than those with a lower priority in the case of cache
overflow.timeToLive
- the time in seconds that the cache entry should remain
in the cachesharingPolicy
- how the cache entry should be shared in a cluster.
values are EntryInfo.NOT_SHARED, EntryInfo.SHARED_PUSH,
and EntryInfo.SHARED_PUSH_PULL.dependencyIds
- an optional set of dependency ids to associate with
the cache entryalias
- an optional set of alias ids to associate with the cache entry
java.lang.UnsupportedOperationException
- if the put operation is
not supported by this map.
java.lang.ClassCastException
- if the class of the specified key or value
prevents it from being stored in this map.
java.lang.IllegalArgumentException
- if some aspect of this key or value
prevents it from being stored in this map.
java.lang.NullPointerException
- this map does not permit null
keys or values, and the specified key or value is
null.DistributedNioMapObject
CacheEntry putAndGet(java.lang.Object key, java.lang.Object value, java.lang.Object userMetaData, int priority, int timeToLive, int inactivityTime, int sharingPolicy, java.lang.Object[] dependencyIds, java.lang.Object[] alias)
key
- key with which the specified value is to be associated.value
- value to be associated with the specified key.userMetaData
- userMetaData for the cache entry.priority
- the priority value for the cache entry. entries
with higher priority will remain in the cache longer
than those with a lower priority in the case of cache
overflow.timeToLive
- the time in seconds that the cache entry should remain
in the cacheinactivityTime
- the time in seconds that a cache entry should remain in
the cache if not accessed. inactivityTime is reset to 0
every time an entry is accessed.sharingPolicy
- how the cache entry should be shared in a cluster.
values are EntryInfo.NOT_SHARED, EntryInfo.SHARED_PUSH,
and EntryInfo.SHARED_PUSH_PULL.dependencyIds
- an optional set of dependency ids to associate with
the cache entryalias
- an optional set of alias ids to associate with the cache entry
java.lang.UnsupportedOperationException
- if the put operation is
not supported by this map.
java.lang.ClassCastException
- if the class of the specified key or value
prevents it from being stored in this map.
java.lang.IllegalArgumentException
- if some aspect of this key or value
prevents it from being stored in this map.
java.lang.NullPointerException
- this map does not permit null
keys or values, and the specified key or value is
null.DistributedNioMapObject
void invalidate(java.lang.Object key, boolean wait, boolean checkPreInvalidationListener)
key
- the key which will be invalidatedwait
- if true, then the method will not complete until the invalidation
has occured. if false, then the invalidation will occur in batch modecheckPreInvalidationListener
- if true, first check with PreInvalidationListener to see
if invalidation should occur. If false, bypass this check
and invalidate immediately.PreInvalidationListener
void invalidate(java.lang.Object key, boolean wait)
key
- the key which will be invalidatedwait
- if true, then the method will not complete until the invalidation
has occured. if false, then the invalidation will occur in batch modevoid invalidate(java.lang.Object key)
key
- the key which will be invalidatedvoid clear()
void addAlias(java.lang.Object key, java.lang.Object[] aliasArray)
key
- the key assoicated with aliasaliasArray
- the alias to use for lookups
java.lang.IllegalArgumentException
- if the key is not in the cache's mapping table.void removeAlias(java.lang.Object alias)
alias
- the alias to move out of the cache's mapping tablevoid releaseLruEntries(int numOfEntries)
numOfEntries
- the number of cache entries to be releasedint size(boolean includeDiskCache)
includeDiskCache
- true to get the size of the memory and disk maps; false to get the size of memory map.
boolean isEmpty(boolean includeDiskCache)
includeDiskCache
- true to check the memory and disk maps; false to check the memory map.
boolean containsKey(java.lang.Object key, boolean includeDiskCache)
key
- whose presence in this map is to be tested.includeDiskCache
- true to check the specified key contained in the memory or disk maps; false to check the specified key contained in the memory map.
boolean enableListener(boolean enable)
enable
- - true to enable support for invalidation and change listeners
or false to disable support for invalidation and change listeners
boolean addInvalidationListener(InvalidationListener listener)
listener
- the invalidation listener object
removeInvalidationListener(com.ibm.websphere.cache.InvalidationListener)
boolean removeInvalidationListener(InvalidationListener listener)
listener
- the invalidation listener object
addInvalidationListener(com.ibm.websphere.cache.InvalidationListener)
boolean addChangeListener(ChangeListener listener)
listener
- the change listener object
removeChangeListener(com.ibm.websphere.cache.ChangeListener)
boolean removeChangeListener(ChangeListener listener)
listener
- the change listener object
addChangeListener(com.ibm.websphere.cache.ChangeListener)
boolean addPreInvalidationListener(PreInvalidationListener listener)
listener
- the pre-invalidation listener object
PreInvalidationListener
,
removePreInvalidationListener(com.ibm.websphere.cache.PreInvalidationListener)
boolean removePreInvalidationListener(PreInvalidationListener listener)
listener
- the invalidation listener object
PreInvalidationListener
,
addPreInvalidationListener(com.ibm.websphere.cache.PreInvalidationListener)
|
IBM WebSphere Application ServerTM Release 8 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |