org.apache.oro.util

Class CacheLRU

Implemented Interfaces:
Cache, java.io.Serializable

public final class CacheLRU
extends GenericCache

This class is a GenericCache subclass implementing an LRU (Least Recently Used) cache replacement policy. In other words, values are added to the cache until it becomes full. Once the cache is full, when a new value is added to the cache, it replaces the least recently used value currently in the cache. This is probably the best general purpose cache replacement policy.
Version:
2.0.8
Since:
1.0
See Also:
GenericCache, Serialized Form

Field Summary

Fields inherited from class org.apache.oro.util.GenericCache

DEFAULT_CAPACITY

Constructor Summary

CacheLRU()
Same as:
 CacheLRU(GenericCache.DEFAULT_CAPACITY);
 
CacheLRU(int capacity)
Creates a CacheLRU instance with a given cache capacity.

Method Summary

void
addElement(Object key, Object value)
Adds a value to the cache.
Object
getElement(Object key)

Methods inherited from class org.apache.oro.util.GenericCache

addElement, capacity, getElement, isFull, keys, size

Constructor Details

CacheLRU

public CacheLRU()
Same as:
 CacheLRU(GenericCache.DEFAULT_CAPACITY);
 

CacheLRU

public CacheLRU(int capacity)
Creates a CacheLRU instance with a given cache capacity.

Parameters:
capacity - The capacity of the cache.

Method Details

addElement

public final void addElement(Object key,
                             Object value)
Adds a value to the cache. If the cache is full, when a new value is added to the cache, it replaces the least recently used value in the cache (i.e., LRU).

Specified by:
addElement in interface Cache
Overrides:
addElement in interface GenericCache
Parameters:
key - The key referencing the value added to the cache.
value - The value to add to the cache.

getElement

public Object getElement(Object key)
Specified by:
getElement in interface Cache
Overrides:
getElement in interface GenericCache

Copyright B) 2000-2003 Apache Software Foundation. All Rights Reserved.