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 cumulative(java.time.Duration size, java.time.Duration step)
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.