com.hazelcast.jet.pipeline

## Class GeneralHashJoinBuilder<T0>

- java.lang.Object
- - com.hazelcast.jet.pipeline.GeneralHashJoinBuilder<T0>

- Type Parameters:
    `T0` - the type of the items in the primary stage
  Direct Known Subclasses:
    HashJoinBuilder, StreamHashJoinBuilder

      public abstract class GeneralHashJoinBuilder<T0>
      extends Object

  Offers a step-by-step fluent API to build a hash-join pipeline stage. To obtain it, call `GeneralStage.hashJoinBuilder()` on the primary stage, the one whose data will be enriched from all other stages.

  Collect all the tags returned from `add()` and use them to retrieve the enriching items from `ItemsByTag` you get in the result.

  This object is mainly intended to build a hash-join of the primary stage with three or more contributing stages. For one or two stages, prefer the direct `stage.hashJoin(...)` calls because they offer more static type safety.

  Since:
    3.0

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `<K,T1_IN,T1> Tag<T1>` | `add(BatchStage<T1_IN> stage, JoinClause<K,T0,T1_IN,T1> joinClause)` Adds another contributing pipeline stage to the hash-join operation.

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

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

- - ### Method Detail

    - #### add

          public <K,T1_IN,T1> Tag<T1> add(BatchStage<T1_IN> stage,
                                          JoinClause<K,T0,T1_IN,T1> joinClause)

      Adds another contributing pipeline stage to the hash-join operation.
      Type Parameters:
        `K` - the type of the join key
        `T1_IN` - the type of the contributing stage's data
        `T1` - the type of result after applying the projecting transformation to the contributing stage's data
      Parameters:
        `stage` - the contributing stage
        `joinClause` - specifies how to join the contributing stage
      Returns:
        the tag that refers to the contributing stage

Copyright © 2019. All rights reserved.