Class LRUMap<A,B>

java.lang.Object
java.util.AbstractMap<A,B>
java.util.HashMap<A,B>
java.util.LinkedHashMap<A,B>
net.thevpc.common.collections.LRUMap<A,B>
All Implemented Interfaces:
Serializable, Cloneable, Map<A,B>, SequencedMap<A,B>

public class LRUMap<A,B> extends LinkedHashMap<A,B>
Created by vpc on 6/1/14.
See Also:
  • Constructor Details

    • LRUMap

      public LRUMap(int maxEntries)
  • Method Details

    • removeEldestEntry

      protected boolean removeEldestEntry(Map.Entry<A,B> eldest)
      Returns true if this LruCache has more entries than the maximum specified when it was created.

      This method does not modify the underlying Map; it relies on the implementation of LinkedHashMap to do that, but that behavior is documented in the JavaDoc for LinkedHashMap.

      Overrides:
      removeEldestEntry in class LinkedHashMap<A,B>
      Parameters:
      eldest - the Entry in question; this implementation doesn't care what it is, since the implementation is only dependent on the size of the cache
      Returns:
      true if the oldest
      See Also:
    • resize

      public void resize(int maxEntries)