Package org.h2.util
Class SmallLRUCache<K,V>
java.lang.Object
java.util.AbstractMap<K,V>
java.util.HashMap<K,V>
java.util.LinkedHashMap<K,V>
org.h2.util.SmallLRUCache<K,V>
- Type Parameters:
K
- the keyV
- the value
- All Implemented Interfaces:
Serializable
,Cloneable
,Map<K,
,V> SequencedMap<K,
V>
This class implements a small LRU object cache.
- 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 TypeMethodDescriptionstatic <K,
V> SmallLRUCache <K, V> newInstance
(int size) Create a new object with all elements of the given collection.protected boolean
removeEldestEntry
(Map.Entry<K, V> eldest) void
setMaxSize
(int size) Methods inherited from class java.util.LinkedHashMap
clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, newLinkedHashMap, putFirst, putLast, replaceAll, reversed, sequencedEntrySet, sequencedKeySet, sequencedValues, values
Methods inherited from class java.util.HashMap
clone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, newHashMap, 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
Methods inherited from interface java.util.SequencedMap
firstEntry, lastEntry, pollFirstEntry, pollLastEntry
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
size
private int size
-
-
Constructor Details
-
SmallLRUCache
private SmallLRUCache(int size)
-
-
Method Details
-
newInstance
Create a new object with all elements of the given collection.- Type Parameters:
K
- the key typeV
- the value type- Parameters:
size
- the number of elements- Returns:
- the object
-
setMaxSize
public void setMaxSize(int size) -
removeEldestEntry
- Overrides:
removeEldestEntry
in classLinkedHashMap<K,
V>
-