## org.apache.commons.collections.bag
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:
  java.io.Serializable, java.lang.Iterable, java.util.Collection, Bag, SortedBag

    public class SynchronizedSortedBag

extends SynchronizedBag
implements SortedBag

Decorates another `SortedBag` 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 13:33:15 +0100 (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
`protected` `SynchronizedSortedBag(Bag bag, java.lang.Object lock)` Constructor that wraps (not copies).
`protected` `SynchronizedSortedBag(SortedBag bag)` Constructor that wraps (not copies).

Method Summary
`java.util.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.
`java.lang.Object` `first()` Returns the first (lowest) member.
`protected SortedBag` `getSortedBag()` Gets the bag being decorated.
`java.lang.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, 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:
    `java.lang.IllegalArgumentException` - if bag is null

### SynchronizedSortedBag

    protected SynchronizedSortedBag(Bag bag,
                                    java.lang.Object lock)

  Constructor that wraps (not copies).

  Parameters:
    `bag` - the bag to decorate, must not be null
    `lock` - the lock to use, must not be null
  Throws:
    `java.lang.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:
    `java.lang.IllegalArgumentException` - if bag is null

### getSortedBag

    protected SortedBag getSortedBag()

  Gets the bag being decorated.

  Returns:
    the decorated bag

### first

    public java.lang.Object first()

  Description copied from interface: `SortedBag`
  Returns the first (lowest) member.

  Specified by:
    `first` in interface `SortedBag`
  Returns:
    the first element in the sorted bag

### last

    public java.lang.Object last()

  Description copied from interface: `SortedBag`
  Returns the last (highest) member.

  Specified by:
    `last` in interface `SortedBag`
  Returns:
    the last element in the sorted bag

### comparator

    public java.util.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 interface `SortedBag`
  Returns:
    the comparator in use, or null if natural ordering

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