org.apache.commons.collections.bag
Class TransformedSortedBag
java.lang.Object
org.apache.commons.collections.collection.AbstractCollectionDecorator<E>
org.apache.commons.collections.collection.AbstractSerializableCollectionDecorator
org.apache.commons.collections.collection.TransformedCollection
org.apache.commons.collections.bag.TransformedBag
org.apache.commons.collections.bag.TransformedSortedBag
- All Implemented Interfaces:
- Serializable, Iterable, Collection, Bag, SortedBag
public class TransformedSortedBag
- extends TransformedBag
- implements SortedBag
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.
Note: This class cannot support generics without breaking the Collection contract.
- Since:
- Commons Collections 3.0
- Version:
- $Revision: 1.2 $ $Date: 2005/05/23 14:42:13 $
- Author:
- Matt Hall, John Watkinson, Stephen Colebourne
- See Also:
- Serialized Form
Methods inherited from class org.apache.commons.collections.collection.AbstractCollectionDecorator |
clear, contains, containsAll, equals, getCollection, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toString |
Methods inherited from interface org.apache.commons.collections.Bag |
add, add, containsAll, getCount, iterator, remove, remove, removeAll, retainAll, size, uniqueSet |
TransformedSortedBag
protected TransformedSortedBag(SortedBag bag,
Transformer 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 nulltransformer
- the transformer to use for conversion, must not be null
- Throws:
IllegalArgumentException
- if bag or transformer is null
decorate
public static <I,O> SortedBag<O> decorate(SortedBag<I> bag,
Transformer<? super I,? extends O> transformer)
- Factory method to create a transforming sorted bag.
If there are any elements already in the bag being decorated, they
are NOT transformed.
- Parameters:
bag
- the bag to decorate, must not be nulltransformer
- the transformer to use for conversion, must not be null
- Returns:
- a new transformed SortedBag
- Throws:
IllegalArgumentException
- if bag or transformer is null
getSortedBag
protected SortedBag getSortedBag()
- Gets the decorated bag.
- 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 © 2005-2005 Apache Software Foundation, Matt Hall, John Watkinson. All Rights Reserved.