Package freemarker.cache
Class SoftCacheStorage
- java.lang.Object
-
- freemarker.cache.SoftCacheStorage
-
- All Implemented Interfaces:
CacheStorage,CacheStorageWithGetSize,ConcurrentCacheStorage
public class SoftCacheStorage extends java.lang.Object implements ConcurrentCacheStorage, CacheStorageWithGetSize
Soft cache storage is a cache storage that usesSoftReferenceobjects 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 parameterless constructor uses a thread-safe map since 2.3.24 or Java 5.
-
-
Constructor Summary
Constructors Constructor Description SoftCacheStorage()Creates an instance that uses aConcurrentMapinternally.SoftCacheStorage(java.util.Map backingMap)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()java.lang.Objectget(java.lang.Object key)intgetSize()Returns a close approximation of the number of cache entries.booleanisConcurrent()Returns true if the underlying Map is aConcurrentMap.voidput(java.lang.Object key, java.lang.Object value)voidremove(java.lang.Object key)
-
-
-
Method Detail
-
isConcurrent
public boolean isConcurrent()
Returns true if the underlying Map is aConcurrentMap.- Specified by:
isConcurrentin interfaceConcurrentCacheStorage- 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:
getin interfaceCacheStorage
-
put
public void put(java.lang.Object key, java.lang.Object value)- Specified by:
putin interfaceCacheStorage
-
remove
public void remove(java.lang.Object key)
- Specified by:
removein interfaceCacheStorage
-
clear
public void clear()
- Specified by:
clearin interfaceCacheStorage
-
getSize
public int getSize()
Returns a close approximation of the number of cache entries.- Specified by:
getSizein interfaceCacheStorageWithGetSize- Since:
- 2.3.21
-
-