Class LRUCache

  extended by java.util.AbstractMap
      extended by java.util.HashMap
          extended by java.util.LinkedHashMap
              extended by org.alicebot.server.core.util.LRUCache
All Implemented Interfaces:, java.lang.Cloneable, java.util.Map

public class LRUCache
extends java.util.LinkedHashMap

This is a trivial extension of LinkedHashMap that is limited to a given number of entries.

Noel Bush
See Also:
Serialized Form

Constructor Summary
LRUCache(int maxEntries)
          Creates a new LRUCache with maxEntries maximum entries.
Method Summary
protected  boolean removeEldestEntry(java.util.Map.Entry 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

Constructor Detail


public LRUCache(int maxEntries)
Creates a new LRUCache with maxEntries maximum entries. The eldest will be automatically removed.

maxEntries - the maximum capacity of the cache
Method Detail


protected boolean removeEldestEntry(java.util.Map.Entry eldest)
removeEldestEntry in class java.util.LinkedHashMap