E - the type of the elements in the collectionpublic class SynchronizedCollection<E>
extends java.lang.Object
implements java.util.Collection<E>, java.io.Serializable
Collection to synchronize its behaviour
for a multi-threaded environment.
Iterators must be manually synchronized:
synchronized (coll) {
Iterator it = coll.iterator();
// do stuff with iterator
}
This class is Serializable from Commons Collections 3.1.
| Modifier and Type | Field and Description |
|---|---|
private java.util.Collection<E> |
collection
The collection to decorate
|
protected java.lang.Object |
lock
The object to lock on, needed for List/SortedSet views
|
private static long |
serialVersionUID
Serialization version
|
| Modifier | Constructor and Description |
|---|---|
protected |
SynchronizedCollection(java.util.Collection<E> collection)
Constructor that wraps (not copies).
|
protected |
SynchronizedCollection(java.util.Collection<E> collection,
java.lang.Object lock)
Constructor that wraps (not copies).
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(E object) |
boolean |
addAll(java.util.Collection<? extends E> coll) |
void |
clear() |
boolean |
contains(java.lang.Object object) |
boolean |
containsAll(java.util.Collection<?> coll) |
protected java.util.Collection<E> |
decorated()
Gets the collection being decorated.
|
boolean |
equals(java.lang.Object object) |
int |
hashCode() |
boolean |
isEmpty() |
java.util.Iterator<E> |
iterator()
Iterators must be manually synchronized.
|
boolean |
remove(java.lang.Object object) |
boolean |
removeAll(java.util.Collection<?> coll) |
boolean |
retainAll(java.util.Collection<?> coll) |
int |
size() |
static <T> SynchronizedCollection<T> |
synchronizedCollection(java.util.Collection<T> coll)
Factory method to create a synchronized collection.
|
java.lang.Object[] |
toArray() |
<T> T[] |
toArray(T[] object) |
java.lang.String |
toString() |
private static final long serialVersionUID
private final java.util.Collection<E> collection
protected final java.lang.Object lock
protected SynchronizedCollection(java.util.Collection<E> collection)
collection - the collection to decorate, must not be nulljava.lang.IllegalArgumentException - if the collection is nullprotected SynchronizedCollection(java.util.Collection<E> collection, java.lang.Object lock)
collection - the collection to decorate, must not be nulllock - the lock object to use, must not be nulljava.lang.IllegalArgumentException - if the collection is nullpublic static <T> SynchronizedCollection<T> synchronizedCollection(java.util.Collection<T> coll)
T - the type of the elements in the collectioncoll - the collection to decorate, must not be nulljava.lang.IllegalArgumentException - if collection is nullprotected java.util.Collection<E> decorated()
public boolean addAll(java.util.Collection<? extends E> coll)
addAll in interface java.util.Collection<E>public void clear()
clear in interface java.util.Collection<E>public boolean contains(java.lang.Object object)
contains in interface java.util.Collection<E>public boolean containsAll(java.util.Collection<?> coll)
containsAll in interface java.util.Collection<E>public boolean isEmpty()
isEmpty in interface java.util.Collection<E>public java.util.Iterator<E> iterator()
synchronized (coll) {
Iterator it = coll.iterator();
// do stuff with iterator
}
public java.lang.Object[] toArray()
toArray in interface java.util.Collection<E>public <T> T[] toArray(T[] object)
toArray in interface java.util.Collection<E>public boolean remove(java.lang.Object object)
remove in interface java.util.Collection<E>public boolean removeAll(java.util.Collection<?> coll)
removeAll in interface java.util.Collection<E>public boolean retainAll(java.util.Collection<?> coll)
retainAll in interface java.util.Collection<E>public int size()
size in interface java.util.Collection<E>public boolean equals(java.lang.Object object)
equals in interface java.util.Collection<E>equals in class java.lang.Objectpublic int hashCode()
hashCode in interface java.util.Collection<E>hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.Object