freemarker.cache
Class SoftCacheStorage
java.lang.Object
freemarker.cache.SoftCacheStorage
- All Implemented Interfaces:
- CacheStorage, ConcurrentCacheStorage
public class SoftCacheStorage
- extends java.lang.Object
- implements ConcurrentCacheStorage
Soft cache storage is a cache storage that uses SoftReference
objects to hold the objects it was passed, therefore allows the garbage
collector to purge the cache when it determines that it wants to free up
memory.
This class is thread-safe to the extent that its underlying map is. The
default implementation uses a concurrent map on Java 5 and above, so it is
thread-safe in that case.
- Author:
- Attila Szegedi
- See Also:
Configuration.setCacheStorage(CacheStorage)
Method Summary |
void |
clear()
|
java.lang.Object |
get(java.lang.Object key)
|
boolean |
isConcurrent()
Returns true if this instance of cache storage is concurrently
accessible from multiple threads without synchronization. |
void |
put(java.lang.Object key,
java.lang.Object value)
|
void |
remove(java.lang.Object key)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SoftCacheStorage
public SoftCacheStorage()
SoftCacheStorage
public SoftCacheStorage(java.util.Map backingMap)
isConcurrent
public boolean isConcurrent()
- Description copied from interface:
ConcurrentCacheStorage
- Returns true if this instance of cache storage is concurrently
accessible from multiple threads without synchronization.
- Specified by:
isConcurrent
in interface ConcurrentCacheStorage
- Returns:
- true if this instance of cache storage is concurrently
accessible from multiple threads without synchronization.
get
public java.lang.Object get(java.lang.Object key)
- Specified by:
get
in interface CacheStorage
put
public void put(java.lang.Object key,
java.lang.Object value)
- Specified by:
put
in interface CacheStorage
remove
public void remove(java.lang.Object key)
- Specified by:
remove
in interface CacheStorage
clear
public void clear()
- Specified by:
clear
in interface CacheStorage