Class ConvertingIterator<S,T>
- java.lang.Object
-
- org.eclipse.rdf4j.common.iterator.ConvertingIterator<S,T>
-
- All Implemented Interfaces:
java.util.Iterator<T>
public abstract class ConvertingIterator<S,T> extends java.lang.Object implements java.util.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).
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Iterator<? extends S>sourceIterThe source type iterator.
-
Constructor Summary
Constructors Modifier Constructor Description protectedConvertingIterator(java.util.Iterator<? extends S> iter)Creates a new ConvertingIterator that operates on the supplied source type itertor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract Tconvert(S sourceObject)Converts a source type object to a target type object.booleanhasNext()Checks whether the source type itertor contains more elements.Tnext()Returns the next element from the source type itertor.voidremove()Calls remove() on the underlying itertor.
-
-
-
Field Detail
-
sourceIter
private final java.util.Iterator<? extends S> sourceIter
The source type iterator.
-
-
Constructor Detail
-
ConvertingIterator
protected ConvertingIterator(java.util.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:
hasNextin interfacejava.util.Iterator<S>- 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:
nextin interfacejava.util.Iterator<S>- Throws:
java.util.NoSuchElementException- If all elements have been returned.java.lang.IllegalStateException- If the itertor has been closed.
-
remove
public void remove()
Calls remove() on the underlying itertor.- Specified by:
removein interfacejava.util.Iterator<S>- Throws:
java.lang.UnsupportedOperationException- If the wrapped itertor does not support the remove operation.java.lang.IllegalStateException- If the itertor has been closed, or ifnext()has not yet been called, orremove()has already been called after the last call tonext().
-
-