|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jcreme.caches.BaseCache
org.jcreme.caches.AggregateCache
This is a helper class. It should be specialized to store specific types. The actual cache is provided by one of the generic caches. This inner cache depends on the storage policy entered. The class can be used as is but developpers should subclass it to fit the needs of particular object subclasses.
Constructor Summary | |
AggregateCache()
Creates new AggregateCache |
|
AggregateCache(int minSize,
int maxSize,
CachePolicy policy)
Creates new BaseBondCache |
Method Summary | |
void |
clear()
Removes all the objects from the Cache, leaving it empty. |
java.lang.Object[] |
getAllObjects()
This method gives access to the full content of the cache. |
java.lang.Object[] |
getAllObjects(java.lang.Class type)
This method gives the same result as the getAllObjects method but the objects in the result array are types with the parameter type. |
protected BaseCache |
getInnerCache()
Provides access to the innerCache for subclasses that would need it. |
java.util.Map |
getMap()
This method enables to access to the cache contents. |
java.lang.Object |
getObject(java.lang.Object key)
Gives access to an object registered in the cache. |
int |
getSize()
This methods gives the current size of the cache. |
void |
registerAllObjects(java.util.Map m)
This is a convenience method. |
void |
registerObject(java.lang.Object key,
java.lang.Object value)
This method adds an object in the cache. |
void |
setMaxSize(int maxSize)
This method modifies the maximum size of the cache. |
void |
setReplacementPolicy(CachePolicy policy)
This method changes both the storage policy and the inner cache. |
void |
unregisterObject(java.lang.Object key)
This method removes an object from the cache. |
Methods inherited from class org.jcreme.caches.BaseCache |
addCacheListener, buildEvent, fireElementAdded, fireElementRemoved, getCacheListeners, getMaxSize, getMinSize, getReplacementPolicy, removeCacheListener |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.jcreme.caches.Cache |
addCacheListener, getCacheListeners, getMaxSize, getReplacementPolicy, removeCacheListener |
Constructor Detail |
public AggregateCache(int minSize, int maxSize, CachePolicy policy) throws java.lang.IllegalArgumentException
minSize
- the initial size of the cache (counted as a number of
elements).maxSize
- the maximum size of the cache (counted as a number of
elements).policy
- the policy used to store the objects.
java.lang.IllegalArgumentException
- if the policy is null.public AggregateCache()
Method Detail |
public void clear()
clear
in interface Cache
clear
in class BaseCache
public void setReplacementPolicy(CachePolicy policy) throws java.lang.IllegalArgumentException
setReplacementPolicy
in interface ModifiableCache
setReplacementPolicy
in class BaseCache
policy
- the policy to use to store objects.
java.lang.IllegalArgumentException
- when the policy is null.public java.lang.Object getObject(java.lang.Object key)
getObject
in interface Cache
getObject
in class BaseCache
key
- the key used to register the searched object.
public int getSize()
getSize
in interface Cache
getSize
in class BaseCache
public void unregisterObject(java.lang.Object key)
unregisterObject
in interface Cache
unregisterObject
in class BaseCache
key
- the key that was used to store the object in the cache.public java.lang.Object[] getAllObjects()
getAllObjects
in interface Cache
getAllObjects
in class BaseCache
public void registerObject(java.lang.Object key, java.lang.Object value) throws CacheFullException
registerObject
in interface Cache
registerObject
in class BaseCache
key
- the key that will be used to retrieve the object.value
- the object to store in the cache.
CacheFullException
- if the object could not be stored in the cache.public void setMaxSize(int maxSize)
setMaxSize
in interface Cache
setMaxSize
in class BaseCache
maxSize
- the maximum number of objects that can be stored in the cache.public void registerAllObjects(java.util.Map m) throws CacheFullException
registerAllObjects
in interface Cache
m
- the map that contains the objects (and keys) to use.
CacheFullException
- when the Cache would exceed its maximum size and no room can
be made.public java.util.Map getMap()
getMap
in interface Cache
public java.lang.Object[] getAllObjects(java.lang.Class type)
getAllObjects
in interface Cache
getAllObjects
in class BaseCache
type
- the type to give to the object in the result array.
protected BaseCache getInnerCache()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |