org.apache.commons.collections.set
Class MapBackedSet

java.lang.Object
  extended by org.apache.commons.collections.set.MapBackedSet
All Implemented Interfaces:
java.io.Serializable, java.lang.Iterable, java.util.Collection, java.util.Set

public final class MapBackedSet
extends java.lang.Object
implements java.util.Set, java.io.Serializable

Decorates a Map to obtain Set behaviour.

This class is used to create a Set with the same properties as the key set of any map. Thus, a ReferenceSet can be created by wrapping a ReferenceMap in an instance of this class.

Most map implementation can be used to create a set by passing in dummy values. Exceptions include BidiMap implementations, as they require unique values.

Since:
Commons Collections 3.1
Version:
$Revision: 646777 $ $Date: 2008-04-10 13:33:15 +0100 (Thu, 10 Apr 2008) $
Author:
Stephen Colebourne
See Also:
Serialized Form

Field Summary
protected  java.lang.Object dummyValue
          The dummyValue to use
protected  java.util.Map map
          The map being used as the backing store
 
Method Summary
 boolean add(java.lang.Object obj)
           
 boolean addAll(java.util.Collection coll)
           
 void clear()
           
 boolean contains(java.lang.Object obj)
           
 boolean containsAll(java.util.Collection coll)
           
static java.util.Set decorate(java.util.Map map)
          Factory method to create a set from a map.
static java.util.Set decorate(java.util.Map map, java.lang.Object dummyValue)
          Factory method to create a set from a map.
 boolean equals(java.lang.Object obj)
           
 int hashCode()
           
 boolean isEmpty()
           
 java.util.Iterator iterator()
           
 boolean remove(java.lang.Object obj)
           
 boolean removeAll(java.util.Collection coll)
           
 boolean retainAll(java.util.Collection coll)
           
 int size()
           
 java.lang.Object[] toArray()
           
 java.lang.Object[] toArray(java.lang.Object[] array)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

map

protected final java.util.Map map
The map being used as the backing store


dummyValue

protected final java.lang.Object dummyValue
The dummyValue to use

Method Detail

decorate

public static java.util.Set decorate(java.util.Map map)
Factory method to create a set from a map.

Parameters:
map - the map to decorate, must not be null
Throws:
java.lang.IllegalArgumentException - if set is null

decorate

public static java.util.Set decorate(java.util.Map map,
                                     java.lang.Object dummyValue)
Factory method to create a set from a map.

Parameters:
map - the map to decorate, must not be null
dummyValue - the dummy value to use
Throws:
java.lang.IllegalArgumentException - if map is null

size

public int size()
Specified by:
size in interface java.util.Collection
Specified by:
size in interface java.util.Set

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Collection
Specified by:
isEmpty in interface java.util.Set

iterator

public java.util.Iterator iterator()
Specified by:
iterator in interface java.lang.Iterable
Specified by:
iterator in interface java.util.Collection
Specified by:
iterator in interface java.util.Set

contains

public boolean contains(java.lang.Object obj)
Specified by:
contains in interface java.util.Collection
Specified by:
contains in interface java.util.Set

containsAll

public boolean containsAll(java.util.Collection coll)
Specified by:
containsAll in interface java.util.Collection
Specified by:
containsAll in interface java.util.Set

add

public boolean add(java.lang.Object obj)
Specified by:
add in interface java.util.Collection
Specified by:
add in interface java.util.Set

addAll

public boolean addAll(java.util.Collection coll)
Specified by:
addAll in interface java.util.Collection
Specified by:
addAll in interface java.util.Set

remove

public boolean remove(java.lang.Object obj)
Specified by:
remove in interface java.util.Collection
Specified by:
remove in interface java.util.Set

removeAll

public boolean removeAll(java.util.Collection coll)
Specified by:
removeAll in interface java.util.Collection
Specified by:
removeAll in interface java.util.Set

retainAll

public boolean retainAll(java.util.Collection coll)
Specified by:
retainAll in interface java.util.Collection
Specified by:
retainAll in interface java.util.Set

clear

public void clear()
Specified by:
clear in interface java.util.Collection
Specified by:
clear in interface java.util.Set

toArray

public java.lang.Object[] toArray()
Specified by:
toArray in interface java.util.Collection
Specified by:
toArray in interface java.util.Set

toArray

public java.lang.Object[] toArray(java.lang.Object[] array)
Specified by:
toArray in interface java.util.Collection
Specified by:
toArray in interface java.util.Set

equals

public boolean equals(java.lang.Object obj)
Specified by:
equals in interface java.util.Collection
Specified by:
equals in interface java.util.Set
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Specified by:
hashCode in interface java.util.Collection
Specified by:
hashCode in interface java.util.Set
Overrides:
hashCode in class java.lang.Object


Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.