Class TimeLimitIteration<E,X extends Exception>

All Implemented Interfaces:
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 Exception> extends IterationWrapper<E,X>
Deprecated.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final InterruptTask<E,X>
    Deprecated.
     
    private final AtomicBoolean
    Deprecated.
     
    private final org.slf4j.Logger
    Deprecated.
     
    private static final Timer
    Deprecated.
     

    Fields inherited from class org.eclipse.rdf4j.common.iteration.IterationWrapper

    wrappedIter
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    TimeLimitIteration(Iteration<? extends E,? extends X> iter, long timeLimit)
    Deprecated.
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private void
    Deprecated.
     
    protected void
    Deprecated.
    Closes this Iteration and also closes the wrapped Iteration if it is a CloseableIteration.
    boolean
    Deprecated.
    Checks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case.
    (package private) void
    Deprecated.
    Users of this class must call this method to interrupt the execution at the next available point.
    Deprecated.
    Returns the next element from the wrapped Iteration.
    void
    Deprecated.
    Removes the last element that has been returned from the wrapped Iteration.
    protected abstract void
    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 Details

    • timer

      private static final Timer timer
      Deprecated.
    • logger

      private final org.slf4j.Logger logger
      Deprecated.
    • interruptTask

      private final InterruptTask<E,X extends Exception> interruptTask
      Deprecated.
    • isInterrupted

      private final AtomicBoolean isInterrupted
      Deprecated.
  • Constructor Details

    • TimeLimitIteration

      protected TimeLimitIteration(Iteration<? extends E,? extends X> iter, long timeLimit)
      Deprecated.
  • Method Details

    • hasNext

      public boolean hasNext() throws X
      Deprecated.
      Description copied from class: IterationWrapper
      Checks whether the wrapped Iteration contains more elements, closing this Iteration when this is not the case.
      Specified by:
      hasNext in interface Iteration<E,X extends Exception>
      Overrides:
      hasNext in class IterationWrapper<E,X extends Exception>
      Returns:
      true if the wrapped Iteration contains more elements, false otherwise.
      Throws:
      X
    • next

      public E next() throws X
      Deprecated.
      Description copied from class: IterationWrapper
      Returns the next element from the wrapped Iteration.
      Specified by:
      next in interface Iteration<E,X extends Exception>
      Overrides:
      next in class IterationWrapper<E,X extends Exception>
      Returns:
      the next element in the iteration.
      Throws:
      X
    • remove

      public void remove() throws X
      Deprecated.
      Description copied from class: IterationWrapper
      Removes the last element that has been returned from the wrapped Iteration.
      Specified by:
      remove in interface Iteration<E,X extends Exception>
      Overrides:
      remove in class IterationWrapper<E,X extends Exception>
      Throws:
      X
    • handleClose

      protected void handleClose() throws X
      Deprecated.
      Description copied from class: IterationWrapper
      Closes this Iteration and also closes the wrapped Iteration if it is a CloseableIteration.
      Overrides:
      handleClose in class IterationWrapper<E,X extends Exception>
      Throws:
      X
    • checkInterrupted

      private void checkInterrupted() throws X
      Deprecated.
      Throws:
      X
    • throwInterruptedException

      protected abstract void throwInterruptedException() throws X
      Deprecated.
      If the iteration is interrupted by its time limit, this method is called to generate and throw the appropriate exception.
      Throws:
      X - The generic class of exceptions thrown by this method.
    • 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 generate InterruptedExceptions that would occur if Thread.interrupt() were called on this thread.