Top Description Fields Constructors Methods
org.springframework.util

public Class CompositeIterator<E>

extends Object
implements Iterator<E>
Class Inheritance
All Implemented Interfaces
java.util.Iterator
Type Parameters
<E>
the element type
Imports
java.util.Iterator, .LinkedHashSet, .NoSuchElementException, .Set

Composite iterator that combines multiple other iterators, as registered via add(Iterator).

This implementation maintains a linked set of iterators which are invoked in sequence until all iterators are exhausted.

Authors
Erwin Vervaet, Juergen Hoeller
Since
3.0

Field Summary

Modifier and TypeField and Description
private boolean
private final Set<Iterator<E>>

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
add(Iterator<E> iterator)

Add given iterator to this composite.

public boolean
hasNext()

Implements java.util.Iterator.hasNext.

Returns true if the iteration has more elements.

public E
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).

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

inUseback to summary
private boolean inUse
iteratorsback to summary
private final Set<Iterator<E>> iterators

Constructor Detail

CompositeIteratorback to summary
public CompositeIterator()

Method Detail

addback to summary
public void add(Iterator<E> iterator)

Add given iterator to this composite.

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

Annotations
@Override
nextback to summary
public E next()

Implements java.util.Iterator.next.

Doc from java.util.Iterator.next.

Returns the next element in the iteration.

Returns:E

the next element in the iteration

Annotations
@Override
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.

Annotations
@Override