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

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `LazyRemovalCache.Printable<K,V>`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `LazyRemovalCache()`
    `LazyRemovalCache(int max_elements, long max_age)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.