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.Set
An 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 class
SoftSet.ComparableSoftReference
(package private) static class
SoftSet.ComparableSoftReferenceIterator
-
Constructor Summary
Constructors Constructor Description SoftSet()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(java.lang.Object o)
boolean
addAll(java.util.Collection c)
void
clear()
boolean
contains(java.lang.Object o)
boolean
containsAll(java.util.Collection c)
boolean
equals(java.lang.Object o)
int
hashCode()
boolean
isEmpty()
java.util.Iterator
iterator()
private void
processQueue()
Iterate through the gcqueue for for any cleared reference, remove the associated value from the underlying set.boolean
remove(java.lang.Object o)
boolean
removeAll(java.util.Collection c)
boolean
retainAll(java.util.Collection c)
int
size()
java.lang.Object[]
toArray()
java.lang.Object[]
toArray(java.lang.Object[] a)
-
-
-
Method Detail
-
size
public int size()
- Specified by:
size
in interfacejava.util.Collection
- Specified by:
size
in interfacejava.util.Set
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfacejava.util.Collection
- Specified by:
isEmpty
in interfacejava.util.Set
-
contains
public boolean contains(java.lang.Object o)
- Specified by:
contains
in interfacejava.util.Collection
- Specified by:
contains
in interfacejava.util.Set
-
iterator
public java.util.Iterator iterator()
- Specified by:
iterator
in interfacejava.util.Collection
- Specified by:
iterator
in interfacejava.lang.Iterable
- Specified by:
iterator
in interfacejava.util.Set
-
toArray
public java.lang.Object[] toArray()
- Specified by:
toArray
in interfacejava.util.Collection
- Specified by:
toArray
in interfacejava.util.Set
-
toArray
public java.lang.Object[] toArray(java.lang.Object[] a)
- Specified by:
toArray
in interfacejava.util.Collection
- Specified by:
toArray
in interfacejava.util.Set
-
add
public boolean add(java.lang.Object o)
- Specified by:
add
in interfacejava.util.Collection
- Specified by:
add
in interfacejava.util.Set
-
remove
public boolean remove(java.lang.Object o)
- Specified by:
remove
in interfacejava.util.Collection
- Specified by:
remove
in interfacejava.util.Set
-
containsAll
public boolean containsAll(java.util.Collection c)
- Specified by:
containsAll
in interfacejava.util.Collection
- Specified by:
containsAll
in interfacejava.util.Set
-
addAll
public boolean addAll(java.util.Collection c)
- Specified by:
addAll
in interfacejava.util.Collection
- Specified by:
addAll
in interfacejava.util.Set
-
retainAll
public boolean retainAll(java.util.Collection c)
- Specified by:
retainAll
in interfacejava.util.Collection
- Specified by:
retainAll
in interfacejava.util.Set
-
removeAll
public boolean removeAll(java.util.Collection c)
- Specified by:
removeAll
in interfacejava.util.Collection
- Specified by:
removeAll
in interfacejava.util.Set
-
clear
public void clear()
- Specified by:
clear
in interfacejava.util.Collection
- Specified by:
clear
in interfacejava.util.Set
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equals
in interfacejava.util.Collection
- Specified by:
equals
in interfacejava.util.Set
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejava.util.Collection
- Specified by:
hashCode
in interfacejava.util.Set
- Overrides:
hashCode
in classjava.lang.Object
-
processQueue
private void processQueue()
Iterate through the gcqueue for for any cleared reference, remove the associated value from the underlying set.
-
-