org.apache.wicket.util.collections
Class MostRecentlyUsedMap<K,V>

java.lang.Object
  extended by java.util.AbstractMap<K,V>
      extended by java.util.HashMap<K,V>
          extended by java.util.LinkedHashMap<K,V>
              extended by org.apache.wicket.util.collections.MostRecentlyUsedMap<K,V>
Type Parameters:
K - key type
V - value type
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.util.Map<K,V>

public class MostRecentlyUsedMap<K,V>
extends java.util.LinkedHashMap<K,V>

Holds a map of most recently used items of a given maximum size. Old entries are expired when the map exceeds that maximum size.

Author:
Jonathan Locke
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.AbstractMap
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V>
 
Field Summary
protected  V removedValue
          Value most recently removed from map
 
Constructor Summary
MostRecentlyUsedMap(int maxEntries)
          Constructor
 
Method Summary
 V getRemovedValue()
           
protected  boolean removeEldestEntry(java.util.Map.Entry<K,V> eldest)
           
 
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
 

Field Detail

removedValue

protected V removedValue
Value most recently removed from map

Constructor Detail

MostRecentlyUsedMap

public MostRecentlyUsedMap(int maxEntries)
Constructor

Parameters:
maxEntries - Maximum number of entries allowed in the map
Method Detail

getRemovedValue

public V getRemovedValue()
Returns:
Returns the removedValue.

removeEldestEntry

protected boolean removeEldestEntry(java.util.Map.Entry<K,V> eldest)
Overrides:
removeEldestEntry in class java.util.LinkedHashMap<K,V>
See Also:
LinkedHashMap.removeEldestEntry(java.util.Map.Entry)


Copyright © 2006-2011 Apache Software Foundation. All Rights Reserved.