Package org.jboss.util.collection
Class SoftSet
- java.lang.Object
-
- org.jboss.util.collection.SoftSet
-
- All Implemented Interfaces:
java.lang.Iterable,java.util.Collection,java.util.Set
public class SoftSet extends java.lang.Object implements java.util.SetAn implementation of Set that manages a map of soft references to the set values. The map is keyed by the value hashCode and so this is only useful for value whose hashCode is a valid identity representation (String, primative wrappers, etc).- Version:
- $Revision$
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static classSoftSet.ComparableSoftReference(package private) static classSoftSet.ComparableSoftReferenceIterator
-
Constructor Summary
Constructors Constructor Description SoftSet()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(java.lang.Object o)booleanaddAll(java.util.Collection c)voidclear()booleancontains(java.lang.Object o)booleancontainsAll(java.util.Collection c)booleanequals(java.lang.Object o)inthashCode()booleanisEmpty()java.util.Iteratoriterator()private voidprocessQueue()Iterate through the gcqueue for for any cleared reference, remove the associated value from the underlying set.booleanremove(java.lang.Object o)booleanremoveAll(java.util.Collection c)booleanretainAll(java.util.Collection c)intsize()java.lang.Object[]toArray()java.lang.Object[]toArray(java.lang.Object[] a)
-
-
-
Method Detail
-
size
public int size()
- Specified by:
sizein interfacejava.util.Collection- Specified by:
sizein interfacejava.util.Set
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmptyin interfacejava.util.Collection- Specified by:
isEmptyin interfacejava.util.Set
-
contains
public boolean contains(java.lang.Object o)
- Specified by:
containsin interfacejava.util.Collection- Specified by:
containsin interfacejava.util.Set
-
iterator
public java.util.Iterator iterator()
- Specified by:
iteratorin interfacejava.util.Collection- Specified by:
iteratorin interfacejava.lang.Iterable- Specified by:
iteratorin interfacejava.util.Set
-
toArray
public java.lang.Object[] toArray()
- Specified by:
toArrayin interfacejava.util.Collection- Specified by:
toArrayin interfacejava.util.Set
-
toArray
public java.lang.Object[] toArray(java.lang.Object[] a)
- Specified by:
toArrayin interfacejava.util.Collection- Specified by:
toArrayin interfacejava.util.Set
-
add
public boolean add(java.lang.Object o)
- Specified by:
addin interfacejava.util.Collection- Specified by:
addin interfacejava.util.Set
-
remove
public boolean remove(java.lang.Object o)
- Specified by:
removein interfacejava.util.Collection- Specified by:
removein interfacejava.util.Set
-
containsAll
public boolean containsAll(java.util.Collection c)
- Specified by:
containsAllin interfacejava.util.Collection- Specified by:
containsAllin interfacejava.util.Set
-
addAll
public boolean addAll(java.util.Collection c)
- Specified by:
addAllin interfacejava.util.Collection- Specified by:
addAllin interfacejava.util.Set
-
retainAll
public boolean retainAll(java.util.Collection c)
- Specified by:
retainAllin interfacejava.util.Collection- Specified by:
retainAllin interfacejava.util.Set
-
removeAll
public boolean removeAll(java.util.Collection c)
- Specified by:
removeAllin interfacejava.util.Collection- Specified by:
removeAllin interfacejava.util.Set
-
clear
public void clear()
- Specified by:
clearin interfacejava.util.Collection- Specified by:
clearin interfacejava.util.Set
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equalsin interfacejava.util.Collection- Specified by:
equalsin interfacejava.util.Set- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacejava.util.Collection- Specified by:
hashCodein interfacejava.util.Set- Overrides:
hashCodein classjava.lang.Object
-
processQueue
private void processQueue()
Iterate through the gcqueue for for any cleared reference, remove the associated value from the underlying set.
-
-