Class LookAheadIteration<E,X extends Exception>

java.lang.Object
org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
org.eclipse.rdf4j.common.iteration.LookAheadIteration<E,X>
All Implemented Interfaces:
AutoCloseable, CloseableIteration<E,X>, Iteration<E,X>
Direct Known Subclasses:
BottomUpJoinIterator, CrossProductIteration, DescribeIteration, DistinctModelReducingUnionIteration, HashJoinIteration, JoinExecutorBase, JoinIterator, LeftJoinIterator, MemTripleIterator, MultiProjectionIterator, PathIteration, QueueIteration, SPARQLCrossProductIteration, UnionIteration, ZeroLengthPathIteration

@Deprecated(since="4.1.0") public abstract class LookAheadIteration<E,X extends Exception> extends AbstractCloseableIteration<E,X>
Deprecated.
An Iteration that looks one element ahead, if necessary, to handle calls to hasNext(). This is a convenient super class for Iterations that have no easy way to tell if there are any more results, but still should implement the java.util.Iteration interface.
  • Field Details

    • nextElement

      private E nextElement
      Deprecated.
  • Constructor Details

    • LookAheadIteration

      protected LookAheadIteration()
      Deprecated.
  • Method Details

    • getNextElement

      protected abstract E getNextElement() throws X
      Deprecated.
      Gets the next element. Subclasses should implement this method so that it returns the next element.
      Returns:
      The next element, or null if no more elements are available.
      Throws:
      X
    • hasNext

      public final boolean hasNext() throws X
      Deprecated.
      Description copied from interface: Iteration
      Returns true if the iteration has more elements. (In other words, returns true if Iteration.next() would return an element rather than throwing a NoSuchElementException.)
      Returns:
      true if the iteration has more elements.
      Throws:
      X
    • next

      public final E next() throws X
      Deprecated.
      Description copied from interface: Iteration
      Returns the next element in the iteration.
      Returns:
      the next element in the iteration.
      Throws:
      X
    • lookAhead

      private E lookAhead() throws X
      Deprecated.
      Fetches the next element if it hasn't been fetched yet and stores it in nextElement.
      Returns:
      The next element, or null if there are no more results.
      Throws:
      X - If there is an issue getting the next element or closing the iteration.
    • remove

      public void remove()
      Deprecated.
    • handleClose

      protected void handleClose() throws X
      Deprecated.
      Description copied from class: AbstractCloseableIteration
      Called by AbstractCloseableIteration.close() when it is called for the first time. This method is only called once on each iteration. By default, this method does nothing.
      Overrides:
      handleClose in class AbstractCloseableIteration<E,X extends Exception>
      Throws:
      X