Top Description Fields Constructors Methods
org.hibernate.util

public Class JoinedIterator

extends Object
implements Iterator
Class Inheritance
All Implemented Interfaces
java.util.Iterator
Imports
java.util.Iterator, .List

An JoinedIterator is an Iterator that wraps a number of Iterators. This class makes multiple iterators look like one to the caller. When any method from the Iterator interface is called, the JoinedIterator will delegate to a single underlying Iterator. The JoinedIterator will invoke the Iterators in sequence until all Iterators are exhausted.

Field Summary

Modifier and TypeField and Description
private Iterator<E>
private int
private static final Iterator<E>[]
private Iterator<E>[]
private Iterator<E>

Constructor Summary

AccessConstructor and Description
public
JoinedIterator(List<E> iterators)

public
JoinedIterator(Iterator<E>[] iterators)

public
JoinedIterator(Iterator<E> first, Iterator<E> second)

Method Summary

Modifier and TypeMethod and Description
public boolean
hasNext()

Implements java.util.Iterator.hasNext.

Returns true if the iteration has more elements.
public Object
next()

Implements java.util.Iterator.next.

Returns the next element in the iteration.
public void
remove()

Overrides default java.util.Iterator.remove.

Removes from the underlying collection the last element returned by this iterator (optional operation).
protected void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

currentIteratorback to summary
private Iterator<E> currentIterator
currentIteratorIndexback to summary
private int currentIteratorIndex
ITERATORSback to summary
private static final Iterator<E>[] ITERATORS
iteratorsback to summary
private Iterator<E>[] iterators
lastUsedIteratorback to summary
private Iterator<E> lastUsedIterator

Constructor Detail

JoinedIteratorback to summary
public JoinedIterator(List<E> iterators)
JoinedIteratorback to summary
public JoinedIterator(Iterator<E>[] iterators)
JoinedIteratorback to summary
public JoinedIterator(Iterator<E> first, Iterator<E> second)

Method Detail

hasNextback to summary
public boolean hasNext()

Implements java.util.Iterator.hasNext.

Doc from java.util.Iterator.hasNext.

Returns true if the iteration has more elements. (In other words, returns true if next would return an element rather than throwing an exception.)

Returns:boolean

true if the iteration has more elements

nextback to summary
public Object next()

Implements java.util.Iterator.next.

Doc from java.util.Iterator.next.

Returns the next element in the iteration.

Returns:Object

the next element in the iteration

removeback to summary
public void remove()

Overrides default java.util.Iterator.remove.

Doc from java.util.Iterator.remove.

Removes from the underlying collection the last element returned by this iterator (optional operation). This method can be called only once per call to next.

The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method, unless an overriding class has specified a concurrent modification policy.

The behavior of an iterator is unspecified if this method is called after a call to the forEachRemaining method.

updateCurrentIteratorback to summary
protected void updateCurrentIterator()