Class LockingIteration<E,X extends Exception>
java.lang.Object
org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
org.eclipse.rdf4j.common.iteration.IterationWrapper<E,X>
org.eclipse.rdf4j.common.concurrent.locks.LockingIteration<E,X>
- All Implemented Interfaces:
AutoCloseable
,CloseableIteration<E,X>
,Iteration<E,X>
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 org.eclipse.rdf4j.common.iteration.IterationWrapper
wrappedIter
-
Constructor Summary
ConstructorsConstructorDescriptionLockingIteration(Lock lock, Iteration<? extends E,X> iter)
Creates a new LockingIteration. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Closes this Iteration and also closes the wrapped Iteration if it is aCloseableIteration
.Methods inherited from class org.eclipse.rdf4j.common.iteration.IterationWrapper
hasNext, next, remove
Methods inherited from class org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration
close, isClosed
-
Constructor Details
-
LockingIteration
Creates a new LockingIteration.- Parameters:
lock
- The lock to release when the itererator is closed, must not be null.iter
- The underlying Iteration, must not be null.
-
-
Method Details
-
handleClose
Description copied from class:IterationWrapper
Closes this Iteration and also closes the wrapped Iteration if it is aCloseableIteration
.- Overrides:
handleClose
in classIterationWrapper<E,X extends Exception>
- Throws:
X
-