|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface MultipleObjectCacheManager
This interface should be implemented by classes that contain X number of publicly available
ObjectCaches, it provides methods that allow applications to control the caches without
understanding what is inside the cache.
All of the methods in this interface are optional and if not supported then
implementing classes should throw UnsupportedOperationException
.
This interface mirrors ObjectCacheManager
but each method (where appropriate)
takes a key object to tell the implementing class which cache it wants the operation
to occur on.
Method Summary | |
---|---|
int |
capacity(Object key)
Return the current capacity of the cache, it should basically be (max size - current size). |
void |
flush(Object key)
Let the object cache be flushed. |
boolean |
isEmpty(Object key)
Return whether the cache is empty or not. |
void |
merge(Object key,
ObjectCache cache)
Merge the current cache with another. |
void |
putAll(Object key,
Map map)
Add all the entries in the Map to cache. |
void |
resize(Object key,
int size)
Resize the cache to a particular size, if the size is actually bigger than the current size then this operation should not touch the cached objects, if the size is less then the cache should be reduced in size using the current policy until the size is reached. |
void |
setMaxSize(Object key,
int size)
Set the maximum size of the cache. |
void |
setPolicy(Object key,
int policy)
Set the policy for managing the cache, should be one of: ObjectCache.OLDEST , ObjectCache.YOUNGEST , ObjectCache.RANDOM . |
void |
toMap(Object object,
Map map)
Get all the entries in the cache as a Map of key to value. |
Method Detail |
---|
void flush(Object key)
key
- The key to identify the particular cache.void setMaxSize(Object key, int size)
key
- The key to identify the particular cache.size
- The maximum size.void resize(Object key, int size)
key
- The key to identify the particular cache.size
- The new size.int capacity(Object key)
key
- The key to identify the particular cache.
boolean isEmpty(Object key)
key
- The key to identify the particular cache.
true
if the cache is empty, false
if it has entries.void toMap(Object object, Map map)
key
- The key to identify the particular cache.map
- The Map that should be populated with the key/values in the cache.void merge(Object key, ObjectCache cache)
key
- The key to identify the particular cache.cache
- The cache to merge.void putAll(Object key, Map map)
key
- The key to identify the particular cache.map
- The Map to get key/values from.void setPolicy(Object key, int policy)
ObjectCache.OLDEST
, ObjectCache.YOUNGEST
, ObjectCache.RANDOM
.
key
- The key to identify the particular cache.policy
- The policy.
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |