Class ResourceCacheImpl
- java.lang.Object
-
- org.apache.velocity.runtime.resource.ResourceCacheImpl
-
- All Implemented Interfaces:
ResourceCache
public class ResourceCacheImpl extends java.lang.Object implements ResourceCache
Default implementation of the resource cache for the default ResourceManager. The cache uses a least recently used (LRU) algorithm, with a maximum size specified via theresource.manager.cache.size
property (idenfied by theRuntimeConstants.RESOURCE_MANAGER_DEFAULTCACHE_SIZE
constant). This property get be set to0
or less for a greedy, unbounded cache (the behavior from pre-v1.5).- Version:
- $Id: ResourceCacheImpl.java 898032 2010-01-11 19:51:03Z nbubna $
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map
cache
Cache storage, assumed to be thread-safe.protected RuntimeServices
rsvc
Runtime services, generally initialized by theinitialize()
method.
-
Constructor Summary
Constructors Constructor Description ResourceCacheImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Iterator
enumerateKeys()
returns an Iterator of Keys in the cache.Resource
get(java.lang.Object key)
retrieves a Resource from the cachevoid
initialize(RuntimeServices rs)
initializes the ResourceCache.Resource
put(java.lang.Object key, Resource value)
stores a Resource in the cacheResource
remove(java.lang.Object key)
removes a Resource from the cache
-
-
-
Field Detail
-
cache
protected java.util.Map cache
Cache storage, assumed to be thread-safe.
-
rsvc
protected RuntimeServices rsvc
Runtime services, generally initialized by theinitialize()
method.
-
-
Method Detail
-
initialize
public void initialize(RuntimeServices rs)
Description copied from interface:ResourceCache
initializes the ResourceCache. Will be called before any utilization- Specified by:
initialize
in interfaceResourceCache
- Parameters:
rs
- RuntimeServices to use for logging, etc- See Also:
ResourceCache.initialize(org.apache.velocity.runtime.RuntimeServices)
-
get
public Resource get(java.lang.Object key)
Description copied from interface:ResourceCache
retrieves a Resource from the cache- Specified by:
get
in interfaceResourceCache
- Parameters:
key
- key for Resource to be retrieved- Returns:
- Resource specified or null if not found
- See Also:
ResourceCache.get(java.lang.Object)
-
put
public Resource put(java.lang.Object key, Resource value)
Description copied from interface:ResourceCache
stores a Resource in the cache- Specified by:
put
in interfaceResourceCache
- Parameters:
key
- key to associate with the Resourcevalue
- Resource to be stored- Returns:
- existing Resource stored under this key, or null if none
- See Also:
ResourceCache.put(java.lang.Object, org.apache.velocity.runtime.resource.Resource)
-
remove
public Resource remove(java.lang.Object key)
Description copied from interface:ResourceCache
removes a Resource from the cache- Specified by:
remove
in interfaceResourceCache
- Parameters:
key
- resource to be removed- Returns:
- stored under key
- See Also:
ResourceCache.remove(java.lang.Object)
-
enumerateKeys
public java.util.Iterator enumerateKeys()
Description copied from interface:ResourceCache
returns an Iterator of Keys in the cache.- Specified by:
enumerateKeys
in interfaceResourceCache
- Returns:
- An Iterator of Keys in the cache.
- See Also:
ResourceCache.enumerateKeys()
-
-