Class AccessBasedLRUCache<K,V>
java.lang.Object
java.util.AbstractMap<K,V>
java.util.HashMap<K,V>
java.util.LinkedHashMap<K,V>
org.eclipse.emf.compare.match.eobject.internal.AccessBasedLRUCache<K,V>
- Type Parameters:
K- the type of keys maintained by this mapV- the type of mapped values
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,java.util.Map<K,V>
public class AccessBasedLRUCache<K,V>
extends java.util.LinkedHashMap<K,V>
A Map acting like a LRU cache which will evict elements which have not been accessed in a while.
- See Also:
- Serialized Form
-
Nested Class Summary
-
Constructor Summary
Constructors Constructor Description AccessBasedLRUCache(int maxSize, int initialCapacity, float loadFactor)Create a new cache. -
Method Summary
Modifier and Type Method Description booleanremoveEldestEntry(java.util.Map.Entry<K,V> eldest)Methods inherited from class java.util.LinkedHashMap
clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, replaceAll, valuesMethods inherited from class java.util.HashMap
clone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size
-
Constructor Details
-
AccessBasedLRUCache
public AccessBasedLRUCache(int maxSize, int initialCapacity, float loadFactor)Create a new cache.- Parameters:
maxSize- the maximum size of the cache before it starts evicting elements.initialCapacity- pre-allocated capacity for the cache.loadFactor- the load factor
-
-
Method Details