Class TimeLimitIteration<E,X extends java.lang.Exception>
- java.lang.Object
-
- org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
-
- org.eclipse.rdf4j.common.iteration.IterationWrapper<E,X>
-
- org.eclipse.rdf4j.common.iteration.TimeLimitIteration<E,X>
-
- All Implemented Interfaces:
java.lang.AutoCloseable,CloseableIteration<E,X>,Iteration<E,X>
- Direct Known Subclasses:
AbstractParserQuery.QueryInterruptIteration,AbstractParserQuery.QueryInterruptIteration
@Deprecated(since="4.1.0") public abstract class TimeLimitIteration<E,X extends java.lang.Exception> extends IterationWrapper<E,X>
Deprecated.
-
-
Field Summary
Fields Modifier and Type Field Description private InterruptTask<E,X>interruptTaskDeprecated.private java.util.concurrent.atomic.AtomicBooleanisInterruptedDeprecated.private org.slf4j.LoggerloggerDeprecated.private static java.util.TimertimerDeprecated.-
Fields inherited from class org.eclipse.rdf4j.common.iteration.IterationWrapper
wrappedIter
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedTimeLimitIteration(Iteration<? extends E,? extends X> iter, long timeLimit)Deprecated.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description private voidcheckInterrupted()Deprecated.protected voidhandleClose()Deprecated.Closes this Iteration and also closes the wrapped Iteration if it is aCloseableIteration.booleanhasNext()Deprecated.Checks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case.(package private) voidinterrupt()Deprecated.Users of this class must call this method to interrupt the execution at the next available point.Enext()Deprecated.Returns the next element from the wrapped Iteration.voidremove()Deprecated.Removes the last element that has been returned from the wrapped Iteration.protected abstract voidthrowInterruptedException()Deprecated.If the iteration is interrupted by its time limit, this method is called to generate and throw the appropriate exception.-
Methods inherited from class org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration
close, isClosed
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.common.iteration.CloseableIteration
stream
-
-
-
-
Field Detail
-
timer
private static final java.util.Timer timer
Deprecated.
-
logger
private final org.slf4j.Logger logger
Deprecated.
-
interruptTask
private final InterruptTask<E,X extends java.lang.Exception> interruptTask
Deprecated.
-
isInterrupted
private final java.util.concurrent.atomic.AtomicBoolean isInterrupted
Deprecated.
-
-
Method Detail
-
hasNext
public boolean hasNext() throws X extends java.lang.ExceptionDeprecated.Description copied from class:IterationWrapperChecks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case.
-
next
public E next() throws X extends java.lang.Exception
Deprecated.Description copied from class:IterationWrapperReturns the next element from the wrapped Iteration.
-
remove
public void remove() throws X extends java.lang.ExceptionDeprecated.Description copied from class:IterationWrapperRemoves the last element that has been returned from the wrapped Iteration.
-
handleClose
protected void handleClose() throws X extends java.lang.ExceptionDeprecated.Description copied from class:IterationWrapperCloses this Iteration and also closes the wrapped Iteration if it is aCloseableIteration.- Overrides:
handleClosein classIterationWrapper<E,X extends java.lang.Exception>- Throws:
XX extends java.lang.Exception
-
checkInterrupted
private void checkInterrupted() throws X extends java.lang.ExceptionDeprecated.- Throws:
X extends java.lang.Exception
-
throwInterruptedException
protected abstract void throwInterruptedException() throws X extends java.lang.ExceptionDeprecated.If the iteration is interrupted by its time limit, this method is called to generate and throw the appropriate exception.
-
interrupt
void interrupt()
Deprecated.Users of this class must call this method to interrupt the execution at the next available point. It does not immediately interrupt the running method, but will call close() and set a flag to increase the chances of it being picked up as soon as possible and to cleanup its resources.
Note, this method does not generateInterruptedExceptions that would occur ifThread.interrupt()were called on this thread.
-
-