org.apache.commons.collections.iterators

Class TransformIterator

Implemented Interfaces:
Iterator

public class TransformIterator
extends java.lang.Object
implements Iterator

Decorates an iterator such that each element returned is transformed.
Version:
$Revision: 1.9 $ $Date: 2004/02/18 00:59:50 $
Authors:
James Strachan
Stephen Colebourne
Since:
Commons Collections 1.0

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

Iterator
getIterator()
Gets the iterator this iterator is using.
Transformer
getTransformer()
Gets the transformer this iterator is using.
boolean
hasNext()
Object
next()
Gets the next object from the iteration, transforming it using the current transformer.
void
remove()
void
setIterator(Iterator iterator)
Sets the iterator for this iterator to use.
void
setTransformer(Transformer transformer)
Sets the transformer this the iterator to use.
protected Object
transform(Object source)
Transforms the given object using the transformer.

Constructor Details

TransformIterator

public TransformIterator()

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 Details

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

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-2006 Apache Software Foundation. All Rights Reserved.