net.sf.extjwnl.util.cache
Class LRUCache<K,V>

java.lang.Object
  extended by net.sf.extjwnl.util.cache.LRUCache<K,V>
All Implemented Interfaces:
Map<K,V>, Cache<K,V>

public class LRUCache<K,V>
extends Object
implements Cache<K,V>

A fixed-capacity Cache that stores the most recently used elements. Once the cache reaches capacity, the least recently used elements will be removed.

Author:
John Didion ,

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Constructor Summary
LRUCache(int capacity)
           
 
Method Summary
 void clear()
           
 boolean containsKey(Object key)
           
 boolean containsValue(Object value)
           
 Set<Map.Entry<K,V>> entrySet()
           
 V get(Object key)
           
 long getCapacity()
          Returns the maximum number of elements the cache can hold.
 boolean isEmpty()
           
 Set<K> keySet()
           
 V put(K key, V value)
           
 void putAll(Map<? extends K,? extends V> m)
           
 V remove(Object key)
           
 void setCapacity(long capacity)
          Sets the maximum number of elements the cache can hold.
 int size()
           
 Collection<V> values()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, hashCode
 

Constructor Detail

LRUCache

public LRUCache(int capacity)
Parameters:
capacity - the maximum number of elements that can be contained in the cache.
Method Detail

setCapacity

public void setCapacity(long capacity)
Description copied from interface: Cache
Sets the maximum number of elements the cache can hold.

Specified by:
setCapacity in interface Cache<K,V>
Parameters:
capacity - capacity

getCapacity

public long getCapacity()
Description copied from interface: Cache
Returns the maximum number of elements the cache can hold.

Specified by:
getCapacity in interface Cache<K,V>
Returns:
the maximum number of elements the cache can hold

size

public int size()
Specified by:
size in interface Map<K,V>

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Map<K,V>

containsKey

public boolean containsKey(Object key)
Specified by:
containsKey in interface Map<K,V>

containsValue

public boolean containsValue(Object value)
Specified by:
containsValue in interface Map<K,V>

get

public V get(Object key)
Specified by:
get in interface Map<K,V>

put

public V put(K key,
             V value)
Specified by:
put in interface Map<K,V>

remove

public V remove(Object key)
Specified by:
remove in interface Map<K,V>

putAll

public void putAll(Map<? extends K,? extends V> m)
Specified by:
putAll in interface Map<K,V>

clear

public void clear()
Specified by:
clear in interface Map<K,V>

keySet

public Set<K> keySet()
Specified by:
keySet in interface Map<K,V>

values

public Collection<V> values()
Specified by:
values in interface Map<K,V>

entrySet

public Set<Map.Entry<K,V>> entrySet()
Specified by:
entrySet in interface Map<K,V>


Copyright © 2013. All Rights Reserved.