org.jgroups.blocks
Class LazyRemovalSet<V>
java.lang.Object
org.jgroups.blocks.LazyRemovalSet<V>
public class LazyRemovalSet<V>
- extends java.lang.Object
Hash set 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
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
LazyRemovalSet
public LazyRemovalSet()
LazyRemovalSet
public LazyRemovalSet(int max_elements,
long max_age)
add
public void add(V val)
add
public void add(V... vals)
add
public void add(java.util.Collection<V> vals)
contains
public boolean contains(V val)
remove
public void remove(V val)
remove
public void remove(V val,
boolean force)
removeAll
public void removeAll(java.util.Collection<V> values)
removeAll
public void removeAll(java.util.Collection<V> values,
boolean force)
clear
public void clear(boolean force)
retainAll
public void retainAll(java.util.Collection<V> values)
retainAll
public void retainAll(java.util.Collection<V> values,
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:
size
public int size()
printCache
public java.lang.String printCache()
printCache
public java.lang.String printCache(LazyRemovalSet.Printable<V> print_function)
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
find
protected LazyRemovalSet.Entry<V> find(V val)
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.