org.eclipse.rdf4j.query.algebra.evaluation.iterator

## Class BottomUpJoinIterator

- java.lang.Object
- - org.eclipse.rdf4j.common.iteration.AbstractCloseableIteration<E,X>
  - - org.eclipse.rdf4j.common.iteration.LookAheadIteration<BindingSet,QueryEvaluationException>
    - - org.eclipse.rdf4j.query.algebra.evaluation.iterator.BottomUpJoinIterator

- All Implemented Interfaces:
    AutoCloseable, CloseableIteration<BindingSet,QueryEvaluationException>, Iteration<BindingSet,QueryEvaluationException>
  Direct Known Subclasses:
    LimitedSizeBottomUpJoinIterator

  Deprecated.
  replaced by HashJoinIteration

      @Deprecated
      public class BottomUpJoinIterator
      extends LookAheadIteration<BindingSet,QueryEvaluationException>

  Join Iterator that executes a basic bottom-up hash-join algorithm. To be used in cases where interleaved iteration joining is not appropriate (e.g. when the join arguments are subselects).
  Author:
    jeen

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BottomUpJoinIterator(EvaluationStrategy strategy, Join join, BindingSet bindings)` Deprecated.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `add(List<BindingSet> leftArgResults, BindingSet b)` Deprecated.
    `protected void` | `addAll(List<BindingSet> hashTableValues, List<BindingSet> values)` Deprecated.
    `protected long` | `clearHashTable()` Deprecated.
    `protected BindingSet` | `getNextElement()` Deprecated. Gets the next element.
    `protected void` | `handleClose()` Deprecated. Called by `AbstractCloseableIteration.close()` when it is called for the first time.
    `protected List<BindingSet>` | `makeList()` Deprecated. Utility methods to make it easier to inserted custom store dependent list
    `protected List<BindingSet>` | `makeList(List<BindingSet> key)` Deprecated. Utility methods to make it easier to inserted custom store dependent list
    `protected Map<BindingSet,List<BindingSet>>` | `makeMap()` Deprecated. Utility methods to make it easier to inserted custom store dependent maps
    `protected void` | `put(Map<BindingSet,List<BindingSet>> hashTable, BindingSet hashKey, List<BindingSet> hashValue)` Deprecated.
    `protected BindingSet` | `removeFirstElement(List<BindingSet> list)` Deprecated. Remove the first (0 index) element from a BindingSet list.

    - ### Methods inherited from class org.eclipse.rdf4j.common.iteration.LookAheadIteration

      `hasNext, next, remove`

    - ### 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.Iteration

      `stream`

- - ### Constructor Detail

    - #### BottomUpJoinIterator

          public BottomUpJoinIterator(EvaluationStrategy strategy,
                                      Join join,
                                      BindingSet bindings)
                               throws QueryEvaluationException

      Deprecated.
      Throws:
        `QueryEvaluationException`

  - ### Method Detail

    - #### getNextElement

          protected BindingSet getNextElement()
                                       throws QueryEvaluationException

      Deprecated.
      Description copied from class: `LookAheadIteration`
      Gets the next element. Subclasses should implement this method so that it returns the next element.
      Specified by:
        `getNextElement` in class `LookAheadIteration<BindingSet,QueryEvaluationException>`
      Returns:
        The next element, or `null` if no more elements are available.
      Throws:
        `QueryEvaluationException`

    - #### handleClose

          protected void handleClose()
                              throws QueryEvaluationException

      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 `LookAheadIteration<BindingSet,QueryEvaluationException>`
      Throws:
        `QueryEvaluationException`

    - #### clearHashTable

          protected long clearHashTable()

      Deprecated.
      Returns:
        the size that the hashtable had before clearing it.

    - #### put

          protected void put(Map<BindingSet,List<BindingSet>> hashTable,
                             BindingSet hashKey,
                             List<BindingSet> hashValue)
                      throws QueryEvaluationException

      Deprecated.
      Throws:
        `QueryEvaluationException`

    - #### addAll

          protected void addAll(List<BindingSet> hashTableValues,
                                List<BindingSet> values)
                         throws QueryEvaluationException

      Deprecated.
      Throws:
        `QueryEvaluationException`

    - #### add

          protected void add(List<BindingSet> leftArgResults,
                             BindingSet b)
                      throws QueryEvaluationException

      Deprecated.
      Throws:
        `QueryEvaluationException`

    - #### makeMap

          protected Map<BindingSet,List<BindingSet>> makeMap()

      Deprecated.
      Utility methods to make it easier to inserted custom store dependent maps
      Returns:
        map

    - #### makeList

          protected List<BindingSet> makeList()

      Deprecated.
      Utility methods to make it easier to inserted custom store dependent list
      Returns:
        list

    - #### makeList

          protected List<BindingSet> makeList(List<BindingSet> key)

      Deprecated.
      Utility methods to make it easier to inserted custom store dependent list
      Returns:
        list

    - #### removeFirstElement

          protected BindingSet removeFirstElement(List<BindingSet> list)
                                           throws QueryEvaluationException

      Deprecated.
      Remove the first (0 index) element from a BindingSet list.
      Parameters:
        `list` - which is worked on.
      Returns:
        the removed BindingSet
      Throws:
        `QueryEvaluationException`

Copyright © 2015-2022 Eclipse Foundation. All Rights Reserved.