Class SynchronizedSortedBag
- java.lang.Object
-
- org.apache.commons.collections.collection.SynchronizedCollection
-
- org.apache.commons.collections.bag.SynchronizedBag
-
- org.apache.commons.collections.bag.SynchronizedSortedBag
-
- All Implemented Interfaces:
Serializable
,Iterable
,Collection
,Bag
,SortedBag
public class SynchronizedSortedBag extends SynchronizedBag implements SortedBag
Decorates anotherSortedBag
to synchronize its behaviour for a multi-threaded environment.Methods are synchronized, then forwarded to the decorated bag. Iterators must be separately synchronized around the loop.
This class is Serializable from Commons Collections 3.1.
- Since:
- Commons Collections 3.0
- Version:
- $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
- Author:
- Stephen Colebourne
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.commons.collections.collection.SynchronizedCollection
collection, lock
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
SynchronizedSortedBag(Bag bag, Object lock)
Constructor that wraps (not copies).protected
SynchronizedSortedBag(SortedBag bag)
Constructor that wraps (not copies).
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Comparator
comparator()
Returns the comparator associated with this sorted set, or null if it uses its elements' natural ordering.static SortedBag
decorate(SortedBag bag)
Factory method to create a synchronized sorted bag.Object
first()
Returns the first (lowest) member.protected SortedBag
getSortedBag()
Gets the bag being decorated.Object
last()
Returns the last (highest) member.-
Methods inherited from class org.apache.commons.collections.bag.SynchronizedBag
add, decorate, getBag, getCount, remove, uniqueSet
-
Methods inherited from class org.apache.commons.collections.collection.SynchronizedCollection
add, addAll, clear, contains, containsAll, decorate, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.commons.collections.Bag
add, add, containsAll, getCount, iterator, remove, remove, removeAll, retainAll, size, uniqueSet
-
Methods inherited from interface java.util.Collection
addAll, clear, contains, equals, hashCode, isEmpty, parallelStream, removeIf, spliterator, stream, toArray, toArray, toArray
-
-
-
-
Constructor Detail
-
SynchronizedSortedBag
protected SynchronizedSortedBag(SortedBag bag)
Constructor that wraps (not copies).- Parameters:
bag
- the bag to decorate, must not be null- Throws:
IllegalArgumentException
- if bag is null
-
SynchronizedSortedBag
protected SynchronizedSortedBag(Bag bag, Object lock)
Constructor that wraps (not copies).- Parameters:
bag
- the bag to decorate, must not be nulllock
- the lock to use, must not be null- Throws:
IllegalArgumentException
- if bag is null
-
-
Method Detail
-
decorate
public static SortedBag decorate(SortedBag bag)
Factory method to create a synchronized sorted bag.- Parameters:
bag
- the bag to decorate, must not be null- Returns:
- a new synchronized SortedBag
- Throws:
IllegalArgumentException
- if bag is null
-
getSortedBag
protected SortedBag getSortedBag()
Gets the bag being decorated.- Returns:
- the decorated bag
-
first
public Object first()
Description copied from interface:SortedBag
Returns the first (lowest) member.
-
last
public Object last()
Description copied from interface:SortedBag
Returns the last (highest) member.
-
comparator
public Comparator comparator()
Description copied from interface:SortedBag
Returns the comparator associated with this sorted set, or null if it uses its elements' natural ordering.- Specified by:
comparator
in interfaceSortedBag
- Returns:
- the comparator in use, or null if natural ordering
-
-