org.openrdf.util.iterators
Class ConvertingIterator<S,T>

java.lang.Object
  extended by org.openrdf.util.iterators.ConvertingIterator<S,T>
All Implemented Interfaces:
Iterator<T>

public abstract class ConvertingIterator<S,T>
extends Object
implements Iterator<T>

An Iterator that converts an iterator over objects of type S (the source type) to an iterator over objects of type T (the target type).


Constructor Summary
ConvertingIterator(Iterator<? extends S> iter)
          Creates a new ConvertingIterator that operates on the supplied source type itertor.
 
Method Summary
protected abstract  T convert(S sourceObject)
          Converts a source type object to a target type object.
 boolean hasNext()
          Checks whether the source type itertor contains more elements.
 T next()
          Returns the next element from the source type itertor.
 void remove()
          Calls remove() on the underlying itertor.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConvertingIterator

public ConvertingIterator(Iterator<? extends S> iter)
Creates a new ConvertingIterator that operates on the supplied source type itertor.

Parameters:
iter - The source type itertor for this ConvertingIterator, must not be null.
Method Detail

convert

protected abstract T convert(S sourceObject)
Converts a source type object to a target type object.


hasNext

public boolean hasNext()
Checks whether the source type itertor contains more elements.

Specified by:
hasNext in interface Iterator<T>
Returns:
true if the source type itertor contains more elements, false otherwise.

next

public T next()
Returns the next element from the source type itertor.

Specified by:
next in interface Iterator<T>
Throws:
NoSuchElementException - If all elements have been returned.
IllegalStateException - If the itertor has been closed.

remove

public void remove()
Calls remove() on the underlying itertor.

Specified by:
remove in interface Iterator<T>
Throws:
UnsupportedOperationException - If the wrapped itertor does not support the remove operation.
IllegalStateException - If the itertor has been closed, or if next() has not yet been called, or remove() has already been called after the last call to next().


Copyright © 2001-2012 Aduna. All Rights Reserved.