org.apache.commons.collections4.bag

## Class TransformedSortedBag<E>

- java.lang.Object
- - org.apache.commons.collections4.collection.AbstractCollectionDecorator<E>
  - - org.apache.commons.collections4.collection.TransformedCollection<E>
    - - org.apache.commons.collections4.bag.TransformedBag<E>
      - - org.apache.commons.collections4.bag.TransformedSortedBag<E>

- All Implemented Interfaces:
    Serializable, Iterable<E>, Collection<E>, Bag<E>, SortedBag<E>

      public class TransformedSortedBag<E>
      extends TransformedBag<E>
      implements SortedBag<E>

  Decorates another `SortedBag` to transform objects that are added.

  The add methods are affected by this class. Thus objects must be removed or searched for using their transformed form. For example, if the transformation converts Strings to Integers, you must use the Integer form to remove objects.

  This class is Serializable from Commons Collections 3.1.

  Since:
    3.0
  Version:
    $Id: TransformedSortedBag.java 1494280 2013-06-18 20:07:04Z tn $
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.apache.commons.collections4.collection.TransformedCollection

      `transformer`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `TransformedSortedBag(SortedBag<E> bag, Transformer<? super E,? extends E> transformer)` Constructor that wraps (not copies).

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Comparator<? super E>` | `comparator()` Returns the comparator associated with this sorted set, or null if it uses its elements' natural ordering.
    `E` | `first()` Returns the first (lowest) member.
    `protected SortedBag<E>` | `getSortedBag()` Gets the decorated bag.
    `E` | `last()` Returns the last (highest) member.
    `static <E> TransformedSortedBag<E>` | `transformedSortedBag(SortedBag<E> bag, Transformer<? super E,? extends E> transformer)` Factory method to create a transforming sorted bag that will transform existing contents of the specified sorted bag.
    `static <E> TransformedSortedBag<E>` | `transformingSortedBag(SortedBag<E> bag, Transformer<? super E,? extends E> transformer)` Factory method to create a transforming sorted bag.

    - ### Methods inherited from class org.apache.commons.collections4.bag.TransformedBag

      `add, getBag, getCount, remove, transformedBag, transformingBag, uniqueSet`

    - ### Methods inherited from class org.apache.commons.collections4.collection.TransformedCollection

      `add, addAll, transform, transform, transformedCollection, transformingCollection`

    - ### Methods inherited from class org.apache.commons.collections4.collection.AbstractCollectionDecorator

      `clear, contains, containsAll, decorated, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, setCollection, 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.collections4.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

    - #### TransformedSortedBag

          protected TransformedSortedBag(SortedBag<E> bag,
                              Transformer<? super E,? extends E> transformer)

      Constructor that wraps (not copies).

      If there are any elements already in the bag being decorated, they are NOT transformed.

      Parameters:
        `bag` - the bag to decorate, must not be null
        `transformer` - the transformer to use for conversion, must not be null
      Throws:
        `IllegalArgumentException` - if bag or transformer is null

  - ### Method Detail

    - #### transformingSortedBag

          public static <E> TransformedSortedBag<E> transformingSortedBag(SortedBag<E> bag,
                                                          Transformer<? super E,? extends E> transformer)

      Factory method to create a transforming sorted bag.

      If there are any elements already in the bag being decorated, they are NOT transformed. Contrast this with `transformedSortedBag(SortedBag, Transformer)`.

      Type Parameters:
        `E` - the type of the elements in the bag
      Parameters:
        `bag` - the bag to decorate, must not be null
        `transformer` - the transformer to use for conversion, must not be null
      Returns:
        a new transformed SortedBag
      Throws:
        `IllegalArgumentException` - if bag or transformer is null
      Since:
        4.0

    - #### transformedSortedBag

          public static <E> TransformedSortedBag<E> transformedSortedBag(SortedBag<E> bag,
                                                         Transformer<? super E,? extends E> transformer)

      Factory method to create a transforming sorted bag that will transform existing contents of the specified sorted bag.

      If there are any elements already in the bag being decorated, they will be transformed by this method. Contrast this with `transformingSortedBag(SortedBag, Transformer)`.

      Type Parameters:
        `E` - the type of the elements in the bag
      Parameters:
        `bag` - the bag to decorate, must not be null
        `transformer` - the transformer to use for conversion, must not be null
      Returns:
        a new transformed SortedBag
      Throws:
        `IllegalArgumentException` - if bag or transformer is null
      Since:
        4.0

    - #### getSortedBag

          protected SortedBag<E> getSortedBag()

      Gets the decorated bag.
      Returns:
        the decorated bag

    - #### first

          public E first()

      Description copied from interface: `SortedBag`
      Returns the first (lowest) member.
      Specified by:
        `first` in interface `SortedBag<E>`
      Returns:
        the first element in the sorted bag

    - #### last

          public E last()

      Description copied from interface: `SortedBag`
      Returns the last (highest) member.
      Specified by:
        `last` in interface `SortedBag<E>`
      Returns:
        the last element in the sorted bag

    - #### comparator

          public Comparator<? super E> 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<E>`
      Returns:
        the comparator in use, or null if natural ordering

Copyright © 2001–2013 The Apache Software Foundation. All rights reserved.