Interface CloseableIteration<E>

All Superinterfaces:
AutoCloseable, Iterator<E>
All Known Subinterfaces:
GraphQueryResult, QueryResult<T>, TupleQueryResult
All Known Implementing Classes:
AbstractCloseableIteration, AbstractCloseableIteratorIteration, BackgroundGraphResult, BackgroundTupleResult, BadlyDesignedLeftJoinIterator, BoundJoinConversionIteration, BoundJoinVALUESConversionIteration, CachedGraphQueryResult, CachedTupleQueryResult, CleanerGraphQueryResult, CleanerTupleQueryResult, CloseableIteratorIteration, CloseablePeakableIteration, CloseDependentConnectionIteration, CollectionIteration, ConsumingIteration, ControlledWorkerBoundJoin, ControlledWorkerJoin, ControlledWorkerLeftJoin, ControlledWorkerUnion, ConvertingIteration, CrossProductIteration, DelayedIteration, DescribeIteration, DistinctIteration, DistinctModelReducingUnionIteration, DualUnionIteration, EmptyIteration, ExceptionConvertingIteration, ExtensionIterator, FederatedDescribeIteration, FedXQueueCursor, FilteringInsertBindingsIteration, FilteringIteration, FilteringIteration, FilterIteration, FilterIterator, GraphToBindingSetConversionIteration, GroupedCheckConversionIteration, GroupIterator, HashJoin, HashJoinIteration, IndependentJoingroupBindingsIteration, IndependentJoingroupBindingsIteration2, IndependentJoingroupBindingsIteration3, InsertBindingSetCursor, InsertBindingsIteration, IntersectIteration, IteratingGraphQueryResult, IteratingTupleQueryResult, IterationWrapper, JoinExecutorBase, JoinExecutorBase, JoinIterator, LazyMutableClosableIteration, LeftJoinIterator, LimitIteration, LockingIteration, LoggingCloseableIteration, LookAheadIteration, MemStatementIterator, MemTripleIterator, MinusIteration, MultiProjectionIterator, MutableTupleQueryResult, OffsetIteration, OrderIterator, ParallelExecutorBase, ParallelServiceExecutor, PathIteration, PrintingIteration, ProjectionIterator, QueryContextIteration, QueryEvaluationStep.DelayedEvaluationIteration, QueryResultIteration, QueueCursor, QueueIteration, ReducedIteration, RepositoryResult, ReusableGraphQueryResult, ReusableTupleQueryResult, ServiceJoinConversionIteration, ServiceJoinIterator, SilentIteration, SingleBindingSetIteration, SingletonIteration, SPARQLCrossProductIteration, SPARQLMinusIteration, StatementConversionIteration, StopRemainingExecutionsOnCloseIteration, SynchronousBoundJoin, SynchronousJoin, SynchronousWorkerUnion, TimeLimitIteration, TripleSourceIterationWrapper, UnionExecutorBase, UnionIteration, WorkerUnionBase, ZeroLengthPathIteration

public interface CloseableIteration<E> extends Iterator<E>, AutoCloseable
An CloseableIteration that can be closed to free resources that it is holding. CloseableIterations automatically free their resources when exhausted. If not read until exhaustion or if you want to make sure the iteration is properly closed, any code using the iterator should be placed in a try-with-resources block, closing the iteration automatically, e.g.:

 try (CloseableIteration<Object, Exception> iter = ...) {
    // read objects from the iterator
 }
 catch(Exception e) {
   // process the exception that can be thrown while processing.
 }
 
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Closes this iteration, freeing any resources that it is holding.
    default Stream<E>
    Convert the results to a Java 8 Stream.

    Methods inherited from interface java.util.Iterator

    forEachRemaining, hasNext, next, remove
  • Method Details

    • stream

      default Stream<E> stream()
      Convert the results to a Java 8 Stream.
      Returns:
      stream
    • close

      void close()
      Closes this iteration, freeing any resources that it is holding. If the iteration has already been closed then invoking this method has no effect.
      Specified by:
      close in interface AutoCloseable