Interface Iteration<E,X extends Exception>

Type Parameters:
E - Object type of objects contained in the iteration.
X - Exception type that is thrown when a problem occurs during iteration.
All Known Subinterfaces:
CloseableIteration<E,X>, GraphQueryResult, QueryResult<T>, TupleQueryResult
All Known Implementing Classes:
AbstractCloseableIteration, AbstractParserQuery.QueryInterruptIteration, AbstractParserQuery.QueryInterruptIteration, BackgroundGraphResult, BackgroundTupleResult, BadlyDesignedLeftJoinIterator, BottomUpJoinIterator, BoundJoinConversionIteration, BoundJoinVALUESConversionIteration, CachedGraphQueryResult, CachedTupleQueryResult, CleanerGraphQueryResult, CleanerTupleQueryResult, CloseableIteratorIteration, CloseablePeakableIteration, CloseDependentConnectionIteration, CollectionIteration, CollectionIteration, CompatibleBindingSetFilter, ConsumingIteration, ControlledWorkerBoundJoin, ControlledWorkerJoin, ControlledWorkerLeftJoin, ControlledWorkerUnion, ConvertingIteration, CrossProductIteration, DelayedEvaluationIteration, DelayedIteration, DescribeIteration, DistinctIteration, DistinctModelReducingUnionIteration, DualUnionIteration, EmptyIteration, ExceptionConvertingIteration, ExtensionIterator, FederatedDescribeIteration, FedXQueueCursor, FilteringInsertBindingsIteration, FilteringIteration, FilteringIteration, FilterIteration, FilterIterator, GraphQueryResultImpl, GraphToBindingSetConversionIteration, GroupedCheckConversionIteration, GroupIterator, HashJoin, HashJoinIteration, IndependentJoingroupBindingsIteration, IndependentJoingroupBindingsIteration2, IndependentJoingroupBindingsIteration3, InsertBindingSetCursor, InsertBindingsIteration, IntersectIteration, IteratingGraphQueryResult, IteratingTupleQueryResult, IterationWrapper, IteratorIteration, JoinExecutorBase, JoinExecutorBase, JoinExecutorBase, JoinIterator, LazyMutableClosableIteration, LeftJoinIterator, LimitedSizeDistinctIteration, LimitIteration, LockingIteration, LoggingCloseableIteration, LookAheadIteration, MemStatementIterator, MemTripleIterator, MinusIteration, MultiProjectionIterator, MutableTupleQueryResult, OffsetIteration, OrderIterator, ParallelExecutorBase, ParallelServiceExecutor, PathIteration, PrintingIteration, ProjectionIterator, QueryContextIteration, QueryEvaluationStep.DelayedEvaluationIteration, QueryResultIteration, QueueCursor, QueueIteration, ReducedIteration, RepositoryExceptionConvertingIteration, RepositoryResult, ReusableGraphQueryResult, ReusableTupleQueryResult, ServiceCrossProductIteration, ServiceJoinConversionIteration, ServiceJoinConversionIteration, ServiceJoinIterator, SilentIteration, SilentIteration, SingleBindingSetIteration, SingletonIteration, SPARQLCrossProductIteration, SPARQLMinusIteration, StatementConversionIteration, StopRemainingExecutionsOnCloseIteration, SynchronousBoundJoin, SynchronousJoin, SynchronousWorkerUnion, TimeLimitIteration, TripleSourceIterationWrapper, TupleQueryResultImpl, UnionExecutorBase, UnionIteration, WorkerUnionBase, ZeroLengthPathIteration

@Deprecated(since="4.1.0", forRemoval=true) public interface Iteration<E,X extends Exception>
Deprecated, for removal: This API element is subject to removal in a future version.
For performance and simplification the Iteration interface is deprecated and will be removed in 5.0.0. Use CloseableIteration instead, even if your iteration doesn't require AutoCloseable.
An Iteration is a typed Iterator-like object that can throw (typed) Exceptions while iterating. This is used in cases where the iteration is lazy and evaluates over a (remote) connection, for example accessing a database. In such cases an error can occur at any time and needs to be communicated through a checked exception, something Iterator can not do (it can only throw RuntimeExceptions.
Author:
jeen, Herko ter Horst
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Deprecated, for removal: This API element is subject to removal in a future version.
    Returns true if the iteration has more elements.
    Deprecated, for removal: This API element is subject to removal in a future version.
    Returns the next element in the iteration.
    void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Removes from the underlying collection the last element returned by the iteration (optional operation).
    default Stream<E>
    Deprecated, for removal: This API element is subject to removal in a future version.
    Convert the results to a Java 8 Stream.
  • Method Details

    • hasNext

      boolean hasNext() throws X
      Deprecated, for removal: This API element is subject to removal in a future version.
      Returns true if the iteration has more elements. (In other words, returns true if next() would return an element rather than throwing a NoSuchElementException.)
      Returns:
      true if the iteration has more elements.
      Throws:
      X
    • next

      E next() throws X
      Deprecated, for removal: This API element is subject to removal in a future version.
      Returns the next element in the iteration.
      Returns:
      the next element in the iteration.
      Throws:
      NoSuchElementException - if the iteration has no more elements or if it has been closed.
      X
    • remove

      void remove() throws X
      Deprecated, for removal: This API element is subject to removal in a future version.
      Removes from the underlying collection the last element returned by the iteration (optional operation). This method can be called only once per call to next.
      Throws:
      UnsupportedOperationException - if the remove operation is not supported by this Iteration.
      IllegalStateException - If the Iteration has been closed, or if next() has not yet been called, or remove() has already been called after the last call to next().
      X
    • stream

      default Stream<E> stream()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Convert the results to a Java 8 Stream. If this iteration implements CloseableIteration it should be closed (by calling Stream#close() or using try-with-resource) if it is not fully consumed.
      Returns:
      stream