org.apache.jcs.auxiliary.disk
Class LRUMapJCS

java.lang.Object
  extended byjava.util.AbstractMap
      extended byorg.apache.commons.collections.map.AbstractHashedMap
          extended byorg.apache.commons.collections.map.AbstractLinkedMap
              extended byorg.apache.commons.collections.map.LRUMap
                  extended byorg.apache.jcs.auxiliary.disk.LRUMapJCS
All Implemented Interfaces:
org.apache.commons.collections.BoundedMap, java.lang.Cloneable, org.apache.commons.collections.IterableMap, java.util.Map, org.apache.commons.collections.OrderedMap, java.io.Serializable
Direct Known Subclasses:
IndexedDiskCache.LRUMap

public class LRUMapJCS
extends org.apache.commons.collections.map.LRUMap

Extension of LRUMap for logging of removals. Can switch this back to a HashMap easily.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.apache.commons.collections.map.AbstractLinkedMap
org.apache.commons.collections.map.AbstractLinkedMap.EntrySetIterator, org.apache.commons.collections.map.AbstractLinkedMap.KeySetIterator, org.apache.commons.collections.map.AbstractLinkedMap.LinkEntry, org.apache.commons.collections.map.AbstractLinkedMap.LinkIterator, org.apache.commons.collections.map.AbstractLinkedMap.LinkMapIterator, org.apache.commons.collections.map.AbstractLinkedMap.ValuesIterator
 
Nested classes inherited from class org.apache.commons.collections.map.AbstractHashedMap
org.apache.commons.collections.map.AbstractHashedMap.EntrySet, org.apache.commons.collections.map.AbstractHashedMap.HashEntry, org.apache.commons.collections.map.AbstractHashedMap.HashIterator, org.apache.commons.collections.map.AbstractHashedMap.HashMapIterator, org.apache.commons.collections.map.AbstractHashedMap.KeySet, org.apache.commons.collections.map.AbstractHashedMap.Values
 
Nested classes inherited from class java.util.Map
java.util.Map.Entry
 
Field Summary
 
Fields inherited from class org.apache.commons.collections.map.LRUMap
DEFAULT_MAX_SIZE
 
Fields inherited from class org.apache.commons.collections.map.AbstractLinkedMap
header
 
Fields inherited from class org.apache.commons.collections.map.AbstractHashedMap
data, DEFAULT_CAPACITY, DEFAULT_LOAD_FACTOR, DEFAULT_THRESHOLD, entrySet, GETKEY_INVALID, GETVALUE_INVALID, keySet, loadFactor, MAXIMUM_CAPACITY, modCount, NO_NEXT_ENTRY, NO_PREVIOUS_ENTRY, NULL, REMOVE_INVALID, SETVALUE_INVALID, size, threshold, values
 
Constructor Summary
LRUMapJCS()
          This creates an unbounded version.
LRUMapJCS(int maxKeySize)
          This creates a list bounded by the max key size argument.
 
Method Summary
protected  void processRemovedLRU(java.lang.Object key, java.lang.Object value)
          This is called when an item is removed from the LRU.
 
Methods inherited from class org.apache.commons.collections.map.LRUMap
addMapping, clone, doReadObject, doWriteObject, get, isFull, isScanUntilRemovable, maxSize, moveToMRU, removeLRU, reuseMapping, updateEntry
 
Methods inherited from class org.apache.commons.collections.map.AbstractLinkedMap
addEntry, clear, containsValue, createEntry, createEntrySetIterator, createKeySetIterator, createValuesIterator, entryAfter, entryBefore, firstKey, getEntry, init, lastKey, mapIterator, nextKey, orderedMapIterator, previousKey, removeEntry
 
Methods inherited from class org.apache.commons.collections.map.AbstractHashedMap
calculateNewCapacity, calculateThreshold, checkCapacity, containsKey, convertKey, destroyEntry, ensureCapacity, entryHashCode, entryKey, entryNext, entrySet, entryValue, equals, getEntry, hash, hashCode, hashIndex, isEmpty, isEqualKey, isEqualValue, keySet, put, putAll, remove, removeMapping, reuseEntry, size, toString, values
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Map
clear, containsKey, containsValue, entrySet, equals, hashCode, isEmpty, keySet, put, putAll, remove, size, values
 

Constructor Detail

LRUMapJCS

public LRUMapJCS()
This creates an unbounded version.


LRUMapJCS

public LRUMapJCS(int maxKeySize)
This creates a list bounded by the max key size argument. The Boundary is enforces by an LRU eviction policy.

This is used in the Disk cache to store keys and purgatory elements if a boundary is requested.

The LRU memory cache uses its own LRU implementation.

Parameters:
maxKeySize -
Method Detail

processRemovedLRU

protected void processRemovedLRU(java.lang.Object key,
                                 java.lang.Object value)
This is called when an item is removed from the LRU. We just log some information.

Parameters:
key -
value -


Copyright © 2002-2005 Apache Software Foundation. All Rights Reserved.