JBoss Common Classes 2.2.17.GA

org.jboss.util.collection
Class ConcurrentSet<E>

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractSet<E>
          extended by org.jboss.util.collection.ConcurrentSet<E>
Type Parameters:
E - the element type
All Implemented Interfaces:
Serializable, Iterable<E>, Collection<E>, Set<E>

public class ConcurrentSet<E>
extends AbstractSet<E>
implements Serializable

ConcurrentSet based on top of ConcurrenthashMap. It's serializable if the elements are serializable.

Author:
Ales Justin
See Also:
Serialized Form

Constructor Summary
ConcurrentSet()
          Constructs a new, empty set; the backing ConcurrentHashMap instance has default initial capacity (16) and load factor (0.75).
ConcurrentSet(Collection<? extends E> c)
          Constructs a new set containing the elements in the specified collection.
ConcurrentSet(int initialCapacity)
          Constructs a new, empty set; the backing ConcurrentHashMap instance has the specified initial capacity and default load factor, which is 0.75.
ConcurrentSet(int initialCapacity, float loadFactor, int concurrencyLevel)
          Constructs a new, empty set; the backing ConcurrentHashMap instance has the specified initial capacity and the specified load factor.
 
Method Summary
 boolean add(E o)
          Adds the specified element to this set if it is not already present.
 void clear()
          Removes all of the elements from this set.
 boolean contains(Object o)
          Returns true if this set contains the specified element.
 boolean isEmpty()
          Returns true if this set contains no elements.
 Iterator<E> iterator()
          Returns an iterator over the elements in this set.
 boolean remove(Object o)
          Removes the specified element from this set if it is present.
 int size()
          Returns the number of elements in this set (its cardinality).
 String toString()
           
 
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAll
 
Methods inherited from class java.util.AbstractCollection
addAll, containsAll, retainAll, toArray, toArray
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Set
addAll, containsAll, retainAll, toArray, toArray
 

Constructor Detail

ConcurrentSet

public ConcurrentSet()
Constructs a new, empty set; the backing ConcurrentHashMap instance has default initial capacity (16) and load factor (0.75).


ConcurrentSet

public ConcurrentSet(Collection<? extends E> c)
Constructs a new set containing the elements in the specified collection. The ConcurrentHashMap is created with default load factor (0.75) and an initial capacity sufficient to contain the elements in the specified collection.

Parameters:
c - the collection whose elements are to be placed into this set.
Throws:
NullPointerException - if the specified collection is null.

ConcurrentSet

public ConcurrentSet(int initialCapacity,
                     float loadFactor,
                     int concurrencyLevel)
Constructs a new, empty set; the backing ConcurrentHashMap instance has the specified initial capacity and the specified load factor.

Parameters:
initialCapacity - the initial capacity. The implementation performs internal sizing to accommodate this many elements.
loadFactor - the load factor threshold, used to control resizing. Resizing may be performed when the average number of elements per bin exceeds this threshold.
concurrencyLevel - the estimated number of concurrently updating threads. The implementation performs internal sizing to try to accommodate this many threads.
Throws:
IllegalArgumentException - if the initial capacity is less than zero, or if the load factor is nonpositive.

ConcurrentSet

public ConcurrentSet(int initialCapacity)
Constructs a new, empty set; the backing ConcurrentHashMap instance has the specified initial capacity and default load factor, which is 0.75.

Parameters:
initialCapacity - the initial capacity of the hash table.
Throws:
IllegalArgumentException - if the initial capacity is less than zero.
Method Detail

iterator

public Iterator<E> iterator()
Returns an iterator over the elements in this set. The elements are returned in no particular order.

Specified by:
iterator in interface Iterable<E>
Specified by:
iterator in interface Collection<E>
Specified by:
iterator in interface Set<E>
Specified by:
iterator in class AbstractCollection<E>
Returns:
an Iterator over the elements in this set.
See Also:
ConcurrentModificationException

size

public int size()
Returns the number of elements in this set (its cardinality).

Specified by:
size in interface Collection<E>
Specified by:
size in interface Set<E>
Specified by:
size in class AbstractCollection<E>
Returns:
the number of elements in this set (its cardinality).

isEmpty

public boolean isEmpty()
Returns true if this set contains no elements.

Specified by:
isEmpty in interface Collection<E>
Specified by:
isEmpty in interface Set<E>
Overrides:
isEmpty in class AbstractCollection<E>
Returns:
true if this set contains no elements.

contains

public boolean contains(Object o)
Returns true if this set contains the specified element.

Specified by:
contains in interface Collection<E>
Specified by:
contains in interface Set<E>
Overrides:
contains in class AbstractCollection<E>
Parameters:
o - element whose presence in this set is to be tested.
Returns:
true if this set contains the specified element.

add

public boolean add(E o)
Adds the specified element to this set if it is not already present.

Specified by:
add in interface Collection<E>
Specified by:
add in interface Set<E>
Overrides:
add in class AbstractCollection<E>
Parameters:
o - element to be added to this set.
Returns:
true if the set did not already contain the specified element.

remove

public boolean remove(Object o)
Removes the specified element from this set if it is present.

Specified by:
remove in interface Collection<E>
Specified by:
remove in interface Set<E>
Overrides:
remove in class AbstractCollection<E>
Parameters:
o - object to be removed from this set, if present.
Returns:
true if the set contained the specified element.

clear

public void clear()
Removes all of the elements from this set.

Specified by:
clear in interface Collection<E>
Specified by:
clear in interface Set<E>
Overrides:
clear in class AbstractCollection<E>

toString

public String toString()
Overrides:
toString in class AbstractCollection<E>

JBoss Common Classes 2.2.17.GA

Copyright © 2011 JBoss, a division of Red Hat, Inc.. All Rights Reserved.