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:
    Serializable, Iterable, 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 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 and Description
    --- | ---
    `protected` | `SynchronizedSortedBag(Bag bag, Object lock)` Constructor that wraps (not copies).
    `protected` | `SynchronizedSortedBag(SortedBag bag)` Constructor that wraps (not copies).

  - ### Method Summary

    Methods
    Modifier and Type | Method and 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, 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 null
        `lock` - 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.
      Specified by:
        `first` in interface `SortedBag`
      Returns:
        the first element in the sorted bag

    - #### last

          public 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 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–2015 The Apache Software Foundation. All rights reserved.