Class WindowGroupAggregateBuilder<K,​R0>

Type Parameters:
K - type of the key
R0 - type of the aggregation result for stream-0

public class WindowGroupAggregateBuilder<K,​R0>
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.

Note: this is not a builder of AggregateOperation. If that' s what you are looking for, go here.

  • Method Details

    • tag0

      @Nonnull public Tag<R0> tag0()
      Returns the tag corresponding to the pipeline stage this builder was obtained from. Use this tag to refer to this stage when extracting the results from the aggregated stage.
    • add

      @Nonnull public <T,​ R> Tag<R> add​(@Nonnull StreamStageWithKey<T,​K> stage, @Nonnull AggregateOperation1<? super T,​?,​? extends R> aggrOp)
      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 the AggregateOperation that you'll pass to build().
    • build

      Creates and returns a pipeline stage that performs a windowed cogroup-and-aggregate operation on the stages registered with this builder object. The composite aggregate operation places the results of the individual aggregate operations in an ItemsByTag. Use the tags you got from this builder to access the results.