Interface CloseableIterator<T>

Type Parameters:
T - the type of elements returned by this CloseableIterator.
All Superinterfaces:
AutoCloseable, Iterator<T>
All Known Subinterfaces:
BlockingIterator<T>, HttpMessageBodyIterator<T>

public interface CloseableIterator<T> extends Iterator<T>, AutoCloseable
An Iterator that is also an AutoCloseable.

This interface is meant to be used in places where an Iterator contains state that is required to be cleared irrespective of whether data from the Iterator is completely consumed (i.e. Iterator.hasNext() is called till it returns false) or not. This interface provides a way for a user of such an Iterator to discard data, by calling AutoCloseable.close(). When using CloseableIterator, it is expected that the user will either consume all the data from the Iterator or explicitly call AutoCloseable.close() to dispose the remaining data.