public class WindowOperatorBuilder extends Object
WindowOperatorBuilder
is used to build WindowOperator
fluently.
Note: You have to call the aggregate method before the last build method.
WindowOperatorBuilder .builder(KeyedStream) .tumble(Duration.ofMinutes(1)) // sliding(...), session(...) .withEventTime() // withProcessingTime() .withAllowedLateness(Duration.ZERO) .produceUpdates() .aggregate(AggregationsFunction, accTypes, windowTypes) .build();
Modifier and Type | Class and Description |
---|---|
static class |
WindowOperatorBuilder.AggregateWindowOperatorBuilder
The builder which is used to build
AggregateWindowOperator fluently. |
static class |
WindowOperatorBuilder.TableAggregateWindowOperatorBuilder
The builder which is used to build
TableAggregateWindowOperator fluently. |
Modifier and Type | Field and Description |
---|---|
protected LogicalType[] |
accumulatorTypes |
protected LogicalType[] |
aggResultTypes |
protected long |
allowedLateness |
protected LogicalType[] |
inputFieldTypes |
protected boolean |
produceUpdates |
protected int |
rowtimeIndex |
protected Trigger<?> |
trigger |
protected WindowAssigner<?> |
windowAssigner |
protected LogicalType[] |
windowPropertyTypes |
Constructor and Description |
---|
WindowOperatorBuilder() |
protected LogicalType[] inputFieldTypes
protected WindowAssigner<?> windowAssigner
protected Trigger<?> trigger
protected LogicalType[] accumulatorTypes
protected LogicalType[] aggResultTypes
protected LogicalType[] windowPropertyTypes
protected long allowedLateness
protected boolean produceUpdates
protected int rowtimeIndex
public static WindowOperatorBuilder builder()
public WindowOperatorBuilder withInputFields(LogicalType[] inputFieldTypes)
public WindowOperatorBuilder tumble(java.time.Duration size)
public WindowOperatorBuilder sliding(java.time.Duration size, java.time.Duration slide)
public WindowOperatorBuilder session(java.time.Duration sessionGap)
public WindowOperatorBuilder countWindow(long size)
public WindowOperatorBuilder countWindow(long size, long slide)
public WindowOperatorBuilder assigner(WindowAssigner<?> windowAssigner)
public WindowOperatorBuilder triggering(Trigger<?> trigger)
public WindowOperatorBuilder withEventTime(int rowtimeIndex)
public WindowOperatorBuilder withProcessingTime()
public WindowOperatorBuilder withAllowedLateness(java.time.Duration allowedLateness)
public WindowOperatorBuilder produceUpdates()
protected void aggregate(LogicalType[] accumulatorTypes, LogicalType[] aggResultTypes, LogicalType[] windowPropertyTypes)
public WindowOperatorBuilder.AggregateWindowOperatorBuilder aggregate(NamespaceAggsHandleFunction<?> aggregateFunction, RecordEqualiser equaliser, LogicalType[] accumulatorTypes, LogicalType[] aggResultTypes, LogicalType[] windowPropertyTypes)
public WindowOperatorBuilder.AggregateWindowOperatorBuilder aggregate(GeneratedNamespaceAggsHandleFunction<?> generatedAggregateFunction, GeneratedRecordEqualiser generatedEqualiser, LogicalType[] accumulatorTypes, LogicalType[] aggResultTypes, LogicalType[] windowPropertyTypes)
public WindowOperatorBuilder.TableAggregateWindowOperatorBuilder aggregate(NamespaceTableAggsHandleFunction<?> tableAggregateFunction, LogicalType[] accumulatorTypes, LogicalType[] aggResultTypes, LogicalType[] windowPropertyTypes)
public WindowOperatorBuilder.TableAggregateWindowOperatorBuilder aggregate(GeneratedNamespaceTableAggsHandleFunction<?> generatedTableAggregateFunction, LogicalType[] accumulatorTypes, LogicalType[] aggResultTypes, LogicalType[] windowPropertyTypes)
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.