Package com.hazelcast.jet.pipeline
Class WindowGroupAggregateBuilder1<T0,K>
java.lang.Object
com.hazelcast.jet.pipeline.WindowGroupAggregateBuilder1<T0,K>
- Type Parameters:
T0
- the type of the stream-0 itemK
- type of the key
public class WindowGroupAggregateBuilder1<T0,K> extends Object
Offers a step-by-step API to build a pipeline stage that performs a
windowed co-grouping and aggregation of the data from several input
stages. To obtain it, call
StageWithKeyAndWindow.aggregateBuilder()
on one of the stages to co-aggregate and refer to that method's Javadoc
for further details.
This object is mainly intended to build a co-aggregation of four or more
contributing stages. For up to three stages, prefer the direct
stage.aggregateN(...)
calls because they offer more static type safety.
Note: this is not a builder of
AggregateOperation
. If that' s what you are looking for, go here
.
- Since:
- 3.0
-
Method Summary
Modifier and Type Method Description <T> Tag<T>
add(StreamStageWithKey<T,K> stage)
Adds another stage that will contribute its data to the windowed group-and-aggregate stage being constructed.<R> StreamStage<KeyedWindowResult<K,R>>
build(AggregateOperation<?,? extends R> aggrOp)
Creates and returns a pipeline stage that performs a windowed cogroup-and-aggregate of the pipeline stages registered with this builder object.Tag<T0>
tag0()
Returns the tag corresponding to the pipeline stage this builder was obtained from.
-
Method Details
-
tag0
Returns the tag corresponding to the pipeline stage this builder was obtained from. Use this tag to refer to this stage when building theAggregateOperation
that you'll pass tobuild(aggrOp)
. -
add
Adds another stage that will contribute its data to the windowed group-and-aggregate stage being constructed. Returns the tag you'll use to refer to this stage when building theAggregateOperation
that you'll pass tobuild()
. -
build
@Nonnull public <R> StreamStage<KeyedWindowResult<K,R>> build(@Nonnull AggregateOperation<?,? extends R> aggrOp)Creates and returns a pipeline stage that performs a windowed cogroup-and-aggregate of the pipeline stages registered with this builder object. The tags you register with the aggregate operation must match the tags you registered with this builder.- Type Parameters:
R
- the type of the aggregation result- Parameters:
aggrOp
- the aggregate operation to perform- Returns:
- a new stage representing the co-aggregation
- See Also:
AggregateOperations
-