Package org.eclipse.rdf4j.sail.shacl.ast.planNodes

## Class BulkedExternalInnerJoin

- java.lang.Object
- - org.eclipse.rdf4j.sail.shacl.ast.planNodes.AbstractBulkJoinPlanNode
  - - org.eclipse.rdf4j.sail.shacl.ast.planNodes.BulkedExternalInnerJoin

- All Implemented Interfaces:
    `PlanNode`

      public class BulkedExternalInnerJoin
      extends AbstractBulkJoinPlanNode

  Author:
    Håvard Ottestad

    This inner join algorithm assumes the left iterator is unique for tuple[0], eg. no two tuples have the same value at index 0. The right iterator is allowed to contain duplicates.

    External means that this plan node can join the iterator from a plan node with an external source (Repository or SailConnection) based on a query or a predicate.

- - ### Field Summary

    - ### Fields inherited from class org.eclipse.rdf4j.sail.shacl.ast.planNodes.AbstractBulkJoinPlanNode

      `mapper`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `BulkedExternalInnerJoin​(PlanNode leftNode, SailConnection connection, Resource[] dataGraph, String query, boolean skipBasedOnPreviousConnection, SailConnection previousStateConnection, Function<BindingSet,​ValidationTuple> mapper)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `depth()` |
    `boolean` | `equals​(Object o)` |
    `String` | `getId()` |
    `void` | `getPlanAsGraphvizDot​(StringBuilder stringBuilder)` |
    `int` | `hashCode()` |
    `CloseableIteration<? extends ValidationTuple,​SailException>` | `iterator()` |
    `void` | `receiveLogger​(ValidationExecutionLogger validationExecutionLogger)` |
    `String` | `toString()` |

    - ### Methods inherited from class org.eclipse.rdf4j.sail.shacl.ast.planNodes.AbstractBulkJoinPlanNode

      `producesSorted, requiresSorted`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### BulkedExternalInnerJoin

          public BulkedExternalInnerJoin​(PlanNode leftNode,
                                         SailConnection connection,
                                         Resource[] dataGraph,
                                         String query,
                                         boolean skipBasedOnPreviousConnection,
                                         SailConnection previousStateConnection,
                                         Function<BindingSet,​ValidationTuple> mapper)

  - ### Method Detail

    - #### iterator

          public CloseableIteration<? extends ValidationTuple,​SailException> iterator()

    - #### depth

          public int depth()

    - #### getPlanAsGraphvizDot

          public void getPlanAsGraphvizDot​(StringBuilder stringBuilder)

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### getId

          public String getId()

    - #### receiveLogger

          public void receiveLogger​(ValidationExecutionLogger validationExecutionLogger)

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `AbstractBulkJoinPlanNode`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `AbstractBulkJoinPlanNode`