org.apache.commons.collections.iterators

Class TransformIterator

public class TransformIterator extends Object implements Iterator

Decorates an iterator such that each element returned is transformed.

Since: Commons Collections 1.0

Version: $Revision: 155406 $ $Date: 2005-02-26 12:55:26 +0000 (Sat, 26 Feb 2005) $

Author: James Strachan Stephen Colebourne

Constructor Summary
TransformIterator()
Constructs a new TransformIterator that will not function until the setIterator method is invoked.
TransformIterator(Iterator iterator)
Constructs a new TransformIterator that won't transform elements from the given iterator.
TransformIterator(Iterator iterator, Transformer transformer)
Constructs a new TransformIterator that will use the given iterator and transformer.
Method Summary
IteratorgetIterator()
Gets the iterator this iterator is using.
TransformergetTransformer()
Gets the transformer this iterator is using.
booleanhasNext()
Objectnext()
Gets the next object from the iteration, transforming it using the current transformer.
voidremove()
voidsetIterator(Iterator iterator)
Sets the iterator for this iterator to use.
voidsetTransformer(Transformer transformer)
Sets the transformer this the iterator to use.
protected Objecttransform(Object source)
Transforms the given object using the transformer.

Constructor Detail

TransformIterator

public TransformIterator()
Constructs a new TransformIterator that will not function until the setIterator method is invoked.

TransformIterator

public TransformIterator(Iterator iterator)
Constructs a new TransformIterator that won't transform elements from the given iterator.

Parameters: iterator the iterator to use

TransformIterator

public TransformIterator(Iterator iterator, Transformer transformer)
Constructs a new TransformIterator that will use the given iterator and transformer. If the given transformer is null, then objects will not be transformed.

Parameters: iterator the iterator to use transformer the transformer to use

Method Detail

getIterator

public Iterator getIterator()
Gets the iterator this iterator is using.

Returns: the iterator.

getTransformer

public Transformer getTransformer()
Gets the transformer this iterator is using.

Returns: the transformer.

hasNext

public boolean hasNext()

next

public Object next()
Gets the next object from the iteration, transforming it using the current transformer. If the transformer is null, no transformation occurs and the object from the iterator is returned directly.

Returns: the next object

Throws: java.util.NoSuchElementException if there are no more elements

remove

public void remove()

setIterator

public void setIterator(Iterator iterator)
Sets the iterator for this iterator to use. If iteration has started, this effectively resets the iterator.

Parameters: iterator the iterator to use

setTransformer

public void setTransformer(Transformer transformer)
Sets the transformer this the iterator to use. A null transformer is a no-op transformer.

Parameters: transformer the transformer to use

transform

protected Object transform(Object source)
Transforms the given object using the transformer. If the transformer is null, the original object is returned as-is.

Parameters: source the object to transform

Returns: the transformed object

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