2016/05/28 - Apache Tuscany has been retired.
For more information, please explore the Attic.
org.apache.tuscany.sca.databinding.util
Class LRUCache<K,V>
java.lang.Object
java.util.AbstractMap<K,V>
java.util.HashMap<K,V>
java.util.LinkedHashMap<K,V>
org.apache.tuscany.sca.databinding.util.LRUCache<K,V>
- Type Parameters:
K
- V
-
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, java.util.Map<K,V>
public class LRUCache<K,V>
- extends java.util.LinkedHashMap<K,V>
A Simple LRU Cache
- See Also:
- Serialized Form
Nested classes/interfaces inherited from class java.util.AbstractMap |
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V> |
Constructor Summary |
LRUCache()
Default constructor for an LRU Cache The default capacity is 10000 |
LRUCache(int maximumCacheSize)
Constructs a LRUCache with a maximum capacity |
LRUCache(int initialCapacity,
int maximumCacheSize,
float loadFactor,
boolean accessOrder)
Constructs an empty LRUCache instance with the specified
initial capacity, maximumCacheSize,load factor and ordering mode. |
Methods inherited from class java.util.LinkedHashMap |
clear, containsValue, get |
Methods inherited from class java.util.HashMap |
clone, containsKey, entrySet, isEmpty, keySet, put, putAll, remove, size, values |
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 |
containsKey, entrySet, equals, hashCode, isEmpty, keySet, put, putAll, remove, size, values |
maxCacheSize
protected int maxCacheSize
LRUCache
public LRUCache()
- Default constructor for an LRU Cache The default capacity is 10000
LRUCache
public LRUCache(int maximumCacheSize)
- Constructs a LRUCache with a maximum capacity
- Parameters:
maximumCacheSize
-
LRUCache
public LRUCache(int initialCapacity,
int maximumCacheSize,
float loadFactor,
boolean accessOrder)
- Constructs an empty LRUCache instance with the specified
initial capacity, maximumCacheSize,load factor and ordering mode.
- Parameters:
initialCapacity
- the initial capacity.maximumCacheSize
- loadFactor
- the load factor.accessOrder
- the ordering mode - true for access-order,
false for insertion-order.
- Throws:
java.lang.IllegalArgumentException
- if the initial capacity is negative or
the load factor is non-positive.
getMaxCacheSize
public int getMaxCacheSize()
- Returns:
- Returns the maxCacheSize.
setMaxCacheSize
public void setMaxCacheSize(int maxCacheSize)
- Parameters:
maxCacheSize
- The maxCacheSize to set.
removeEldestEntry
protected boolean removeEldestEntry(java.util.Map.Entry<K,V> eldest)
- Overrides:
removeEldestEntry
in class java.util.LinkedHashMap<K,V>