Package org.eclipse.rdf4j.spring.resultcache

## Class CachedTupleQueryResult

- java.lang.Object
- - org.eclipse.rdf4j.spring.resultcache.CachedTupleQueryResult

- All Implemented Interfaces:
    `AutoCloseable`, `Iterable<BindingSet>`, `CloseableIteration<BindingSet,​QueryEvaluationException>`, `Iteration<BindingSet,​QueryEvaluationException>`, `QueryResult<BindingSet>`, `TupleQueryResult`

      public class CachedTupleQueryResult
      extends Object
      implements TupleQueryResult

  Since:
    4.0.0
  Author:
    Florian Kleedorfer

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Closes this iteration, freeing any resources that it is holding.
    `void` | `forEach​(Consumer<? super BindingSet> action)` |
    `List<String>` | `getBindingNames()` | Gets the names of the bindings, in order of projection.
    `boolean` | `hasNext()` | Returns true if the iteration has more elements.
    `Iterator<BindingSet>` | `iterator()` |
    `BindingSet` | `next()` | Returns the next element in the iteration.
    `void` | `remove()` | Removes from the underlying collection the last element returned by the iteration (optional operation).
    `Spliterator<BindingSet>` | `spliterator()` |
    `Stream<BindingSet>` | `stream()` | Convert the results to a Java 8 Stream.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getBindingNames

          public List<String> getBindingNames()
                                       throws QueryEvaluationException

      Description copied from interface: `TupleQueryResult`
      Gets the names of the bindings, in order of projection.
      Specified by:
        `getBindingNames` in interface `TupleQueryResult`
      Returns:
        The binding names, in order of projection.
      Throws:
        `QueryEvaluationException`

    - #### iterator

          public Iterator<BindingSet> iterator()

      Specified by:
        `iterator` in interface `Iterable<BindingSet>`
      Specified by:
        `iterator` in interface `QueryResult<BindingSet>`

    - #### close

          public void close()
                     throws QueryEvaluationException

      Description copied from interface: `CloseableIteration`
      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`
      Specified by:
        `close` in interface `CloseableIteration<BindingSet,​QueryEvaluationException>`
      Throws:
        `QueryEvaluationException`

    - #### hasNext

          public boolean hasNext()
                          throws QueryEvaluationException

      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.)
      Specified by:
        `hasNext` in interface `Iteration<BindingSet,​QueryEvaluationException>`
      Returns:
        true if the iteration has more elements.
      Throws:
        `QueryEvaluationException`

    - #### next

          public BindingSet next()
                          throws QueryEvaluationException

      Description copied from interface: `Iteration`
      Returns the next element in the iteration.
      Specified by:
        `next` in interface `Iteration<BindingSet,​QueryEvaluationException>`
      Returns:
        the next element in the iteration.
      Throws:
        `QueryEvaluationException`

    - #### remove

          public void remove()
                      throws QueryEvaluationException

      Description copied from interface: `Iteration`
      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.
      Specified by:
        `remove` in interface `Iteration<BindingSet,​QueryEvaluationException>`
      Throws:
        `QueryEvaluationException`

    - #### stream

          public Stream<BindingSet> stream()

      Description copied from interface: `Iteration`
      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.
      Specified by:
        `stream` in interface `Iteration<BindingSet,​QueryEvaluationException>`
      Returns:
        stream

    - #### forEach

          public void forEach​(Consumer<? super BindingSet> action)

      Specified by:
        `forEach` in interface `Iterable<BindingSet>`

    - #### spliterator

          public Spliterator<BindingSet> spliterator()

      Specified by:
        `spliterator` in interface `Iterable<BindingSet>`