Package net.didion.jwnl.util.cache
Class LRUCache
java.lang.Object
java.util.AbstractMap
java.util.HashMap
java.util.LinkedHashMap
net.didion.jwnl.util.cache.LRUCache
- All Implemented Interfaces:
Serializable
,Cloneable
,Map
,Cache
- Direct Known Subclasses:
AbstractCachingDictionary.ObservableCache
A fixed-capacity
Cache
that stores the most recently used elements. Once the cache reaches
capacity, the least recently used elements will be removed.- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K,
V>, AbstractMap.SimpleImmutableEntry<K, V> -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
Returns the maximum number of elements the cache can hold.int
getSize()
Returns the current size of the cache.boolean
isFull()
protected boolean
removeEldestEntry
(Map.Entry eldest) int
setCapacity
(int capacity) Set the maximum number of elements the cache can hold.Methods inherited from class java.util.LinkedHashMap
clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, replaceAll, values
Methods inherited from class java.util.HashMap
clone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size
Methods inherited from class java.util.AbstractMap
equals, hashCode, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, containsKey, equals, hashCode, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size
-
Field Details
-
_capacity
private int _capacity
-
-
Constructor Details
-
LRUCache
public LRUCache(int capacity) - Parameters:
capacity
- the maximum number of elements that can be contained in the cache.
-
-
Method Details
-
isFull
public boolean isFull() -
removeEldestEntry
- Overrides:
removeEldestEntry
in classLinkedHashMap
-
setCapacity
public int setCapacity(int capacity) Description copied from interface:Cache
Set the maximum number of elements the cache can hold.- Specified by:
setCapacity
in interfaceCache
-
getCapacity
public int getCapacity()Description copied from interface:Cache
Returns the maximum number of elements the cache can hold.- Specified by:
getCapacity
in interfaceCache
-
getSize
public int getSize()Description copied from interface:Cache
Returns the current size of the cache.
-