|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectinfo.aduna.iteration.CloseableIterationBase<E,X>
info.aduna.iteration.IterationWrapper<E,X>
info.aduna.concurrent.locks.LockingIteration<E,X>
public class LockingIteration<E,X extends Exception>
An Iteration that holds on to a lock until the Iteration is closed. Upon closing, the underlying Iteration is closed before the lock is released. This iterator closes itself as soon as all elements have been read.
| Field Summary |
|---|
| Fields inherited from class info.aduna.iteration.IterationWrapper |
|---|
wrappedIter |
| Constructor Summary | |
|---|---|
LockingIteration(Lock lock,
Iteration<? extends E,X> iter)
Creates a new LockingIteration. |
|
| Method Summary | |
|---|---|
protected void |
handleClose()
Closed this Iteration and also closes the wrapped Iteration if it is a CloseableIteration. |
boolean |
hasNext()
Checks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case. |
E |
next()
Returns the next element from the wrapped Iteration. |
void |
remove()
Removes the last element that has been returned from the wrapped Iteration. |
| Methods inherited from class info.aduna.iteration.CloseableIterationBase |
|---|
close, isClosed |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public LockingIteration(Lock lock,
Iteration<? extends E,X> iter)
lock - The lock to release when the itererator is closed, must not be
null.iter - The underlying Iteration, must not be null.| Method Detail |
|---|
public boolean hasNext()
throws X extends Exception
IterationWrapper
hasNext in interface Iteration<E,X extends Exception>hasNext in class IterationWrapper<E,X extends Exception>X
X extends Exception
public E next()
throws X extends Exception
IterationWrapper
next in interface Iteration<E,X extends Exception>next in class IterationWrapper<E,X extends Exception>X extends Exception
public void remove()
throws X extends Exception
IterationWrapper
remove in interface Iteration<E,X extends Exception>remove in class IterationWrapper<E,X extends Exception>X extends Exception
protected void handleClose()
throws X extends Exception
IterationWrapperCloseableIteration.
handleClose in class IterationWrapper<E,X extends Exception>X
X extends Exception
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||