## org.jgroups.blocks
Class LazyRemovalCache<K,V>

    java.lang.Object
      org.jgroups.blocks.LazyRemovalCache<K,V>

    public class LazyRemovalCache<K,V>

extends java.lang.Object

Cache which doesn't remove elements on remove(), removeAll() or retainAll(), but only removes elements when a configurable size limit has been exceeded. In that case, all elements marked as removable and older than a configurable time are evicted. Elements are marked as removable by remove(), removeAll() and retainAll(). When an elements is marked as removable, but later reinserted, the mark is removed.

Author:
  Bela Ban

Nested Class Summary
`static interface` `LazyRemovalCache.Printable<K,V>`

Constructor Summary
`LazyRemovalCache()`
`LazyRemovalCache(int max_elements, long max_age)`

Method Summary
`void` `add(K key, V val)`
`void` `clear(boolean force)`
`boolean` `containsKey(K key)`
`boolean` `containsKeys(java.util.Collection<K> keys)` Returns true if all of the keys in keys are present.
`java.util.Map<K,V>` `contents()`
`V` `get(K key)`
`K` `getByValue(V val)`
`java.util.Set<V>` `nonRemovedValues()` Adds all value which have not been marked as removable to the returned set
`java.lang.String` `printCache()`
`java.lang.String` `printCache(LazyRemovalCache.Printable print_function)`
`void` `remove(K key)`
`void` `remove(K key, boolean force)`
`void` `removeAll(java.util.Collection<K> keys)`
`void` `removeAll(java.util.Collection<K> keys, boolean force)`
`void` `removeMarkedElements()` Removes elements marked as removable
`void` `removeMarkedElements(boolean force)` Removes elements marked as removable
`void` `retainAll(java.util.Collection<K> keys)`
`void` `retainAll(java.util.Collection<K> keys, boolean force)`
`int` `size()`
`java.lang.String` `toString()`
`java.util.Set<V>` `values()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### LazyRemovalCache

    public LazyRemovalCache()

### LazyRemovalCache

    public LazyRemovalCache(int max_elements,
                            long max_age)

Method Detail

### add

    public void add(K key,
                    V val)

### containsKey

    public boolean containsKey(K key)

### containsKeys

    public boolean containsKeys(java.util.Collection<K> keys)

  Returns true if all of the keys in keys are present. Returns false if one or more of the keys are absent

### get

    public V get(K key)

### getByValue

    public K getByValue(V val)

### remove

    public void remove(K key)

### remove

    public void remove(K key,
                       boolean force)

### removeAll

    public void removeAll(java.util.Collection<K> keys)

### removeAll

    public void removeAll(java.util.Collection<K> keys,
                          boolean force)

### clear

    public void clear(boolean force)

### retainAll

    public void retainAll(java.util.Collection<K> keys)

### retainAll

    public void retainAll(java.util.Collection<K> keys,
                          boolean force)

### values

    public java.util.Set<V> values()

### nonRemovedValues

    public java.util.Set<V> nonRemovedValues()

  Adds all value which have not been marked as removable to the returned set

  Returns:

### contents

    public java.util.Map<K,V> contents()

### size

    public int size()

### printCache

    public java.lang.String printCache()

### printCache

    public java.lang.String printCache(LazyRemovalCache.Printable print_function)

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

### removeMarkedElements

    public void removeMarkedElements(boolean force)

  Removes elements marked as removable

  Parameters:
    `force` - If set to true, all elements marked as 'removable' will get removed, regardless of expiration

### removeMarkedElements

    public void removeMarkedElements()

  Removes elements marked as removable

Copyright © 1998-2009 Bela Ban / Red Hat. All Rights Reserved.