org.apache.commons.collections4.set

## Class TransformedSortedSet<E>

- java.lang.Object
- - org.apache.commons.collections4.collection.AbstractCollectionDecorator<E>
  - - org.apache.commons.collections4.collection.TransformedCollection<E>
    - - org.apache.commons.collections4.set.TransformedSet<E>
      - - org.apache.commons.collections4.set.TransformedSortedSet<E>

- All Implemented Interfaces:
    Serializable, Iterable<E>, Collection<E>, Set<E>, SortedSet<E>

      public class TransformedSortedSet<E>
      extends TransformedSet<E>
      implements SortedSet<E>

  Decorates another `SortedSet` 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: TransformedSortedSet.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` | `TransformedSortedSet(SortedSet<E> set, Transformer<? super E,? extends E> transformer)` Constructor that wraps (not copies).

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Comparator<? super E>` | `comparator()`
    `E` | `first()`
    `protected SortedSet<E>` | `getSortedSet()` Gets the decorated set.
    `SortedSet<E>` | `headSet(E toElement)`
    `E` | `last()`
    `SortedSet<E>` | `subSet(E fromElement, E toElement)`
    `SortedSet<E>` | `tailSet(E fromElement)`
    `static <E> TransformedSortedSet<E>` | `transformedSortedSet(SortedSet<E> set, Transformer<? super E,? extends E> transformer)` Factory method to create a transforming sorted set that will transform existing contents of the specified sorted set.
    `static <E> TransformedSortedSet<E>` | `transformingSortedSet(SortedSet<E> set, Transformer<? super E,? extends E> transformer)` Factory method to create a transforming sorted set.

    - ### Methods inherited from class org.apache.commons.collections4.set.TransformedSet

      `transformedSet, transformingSet`

    - ### 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 java.util.Set

      `add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray`

- - ### Constructor Detail

    - #### TransformedSortedSet

          protected TransformedSortedSet(SortedSet<E> set,
                              Transformer<? super E,? extends E> transformer)

      Constructor that wraps (not copies).

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

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

  - ### Method Detail

    - #### transformingSortedSet

          public static <E> TransformedSortedSet<E> transformingSortedSet(SortedSet<E> set,
                                                          Transformer<? super E,? extends E> transformer)

      Factory method to create a transforming sorted set.

      If there are any elements already in the set being decorated, they are NOT transformed. Contrast this with `transformedSortedSet(SortedSet, Transformer)`.

      Type Parameters:
        `E` - the element type
      Parameters:
        `set` - the set to decorate, must not be null
        `transformer` - the transformer to use for conversion, must not be null
      Returns:
        a new transformed `SortedSet`
      Throws:
        `IllegalArgumentException` - if set or transformer is null
      Since:
        4.0

    - #### transformedSortedSet

          public static <E> TransformedSortedSet<E> transformedSortedSet(SortedSet<E> set,
                                                         Transformer<? super E,? extends E> transformer)

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

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

      Type Parameters:
        `E` - the element type
      Parameters:
        `set` - the set to decorate, must not be null
        `transformer` - the transformer to use for conversion, must not be null
      Returns:
        a new transformed `SortedSet`
      Throws:
        `IllegalArgumentException` - if set or transformer is null
      Since:
        4.0

    - #### getSortedSet

          protected SortedSet<E> getSortedSet()

      Gets the decorated set.
      Returns:
        the decorated set

    - #### first

          public E first()

      Specified by:
        `first` in interface `SortedSet<E>`

    - #### last

          public E last()

      Specified by:
        `last` in interface `SortedSet<E>`

    - #### comparator

          public Comparator<? super E> comparator()

      Specified by:
        `comparator` in interface `SortedSet<E>`

    - #### subSet

          public SortedSet<E> subSet(E fromElement,
                            E toElement)

      Specified by:
        `subSet` in interface `SortedSet<E>`

    - #### headSet

          public SortedSet<E> headSet(E toElement)

      Specified by:
        `headSet` in interface `SortedSet<E>`

    - #### tailSet

          public SortedSet<E> tailSet(E fromElement)

      Specified by:
        `tailSet` in interface `SortedSet<E>`

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