org.castor.cache.hashbelt
Class LRUHashbelt<K,V>

java.lang.Object
  extended by org.castor.cache.AbstractBaseCache<K,V>
      extended by org.castor.cache.hashbelt.AbstractHashbelt<K,V>
          extended by org.castor.cache.hashbelt.LRUHashbelt<K,V>
Type Parameters:
K - the type of keys maintained by this cache
V - the type of cached values
All Implemented Interfaces:
Map<K,V>, Cache<K,V>

public final class LRUHashbelt<K,V>
extends AbstractHashbelt<K,V>

A type of hashbelt that moves requested elements back into the first container when a get or add occurs.

Objects which are rarely used will work their way down the conveyor belt, and eventually be discarded, if they are not referenced.

Since:
1.0
Version:
$Revision: 9041 $ $Date: 2011-08-16 11:51:17 +0200 (Di, 16 Aug 2011) $
Author:
Ralf Joachim

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
Map.Entry<K,V>
 
Field Summary
static String TYPE
          The type of the cache.
 
Fields inherited from class org.castor.cache.hashbelt.AbstractHashbelt
DEFAULT_CAPACITY, DEFAULT_CONTAINER_CLASS, DEFAULT_CONTAINERS, DEFAULT_MONITOR, DEFAULT_REAPER_CLASS, DEFAULT_TTL, PARAM_CAPACITY, PARAM_CONTAINER_CLASS, PARAM_CONTAINERS, PARAM_MONITOR, PARAM_REAPER_CLASS, PARAM_TTL
 
Fields inherited from interface org.castor.cache.Cache
DEFAULT_DEBUG, DEFAULT_NAME, DEFAULT_TYPE, PARAM_DEBUG, PARAM_NAME, PARAM_TYPE
 
Constructor Summary
LRUHashbelt()
           
 
Method Summary
 V get(Object key)
          
 String getType()
          Indicates the type of this cache.
 V put(K key, V value)
          
 void putAll(Map<? extends K,? extends V> map)
          
 V remove(Object key)
          
 
Methods inherited from class org.castor.cache.hashbelt.AbstractHashbelt
clear, close, containsKey, containsValue, entrySet, getCapacity, getObjectFromCache, getTTL, initialize, isEmpty, keySet, lock, putObjectIntoCache, removeObjectFromCache, size, values
 
Methods inherited from class org.castor.cache.AbstractBaseCache
expire, expireAll, getName
 
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
 

Field Detail

TYPE

public static final String TYPE
The type of the cache.

See Also:
Constant Field Values
Constructor Detail

LRUHashbelt

public LRUHashbelt()
Method Detail

getType

public String getType()
Indicates the type of this cache.

Returns:
The cache type.

get

public V get(Object key)


put

public V put(K key,
             V value)


remove

public V remove(Object key)


putAll

public void putAll(Map<? extends K,? extends V> map)



Copyright © 2012. All Rights Reserved.