Class AggregateOperationBuilder<A>

java.lang.Object
com.hazelcast.jet.aggregate.AggregateOperationBuilder<A>
Type Parameters:
A - the type of the accumulator

public final class AggregateOperationBuilder<A> extends Object
A builder object that can be used to construct the definition of an aggregate operation in a step-by-step manner. Please refer to AggregateOperation.withCreate() for more details.
Since:
Jet 3.0
  • Method Details

    • andAccumulate

      @Nonnull public <T> AggregateOperationBuilder.Arity1<T,A,Void> andAccumulate(@Nonnull BiConsumerEx<? super A,? super T> accumulateFn)
      Registers the AggregateOperation1.accumulateFn() accumulate} primitive. Also selects the fixed-arity variant of the aggregate operation.

      This method is synonymous with andAccumulate0(), but makes more sense when defining a simple, arity-1 aggregate operation.

      Type Parameters:
      T - the expected type of input item
      Parameters:
      accumulateFn - the accumulate primitive, parameters are (accumulator, item). It must be stateless and cooperative.
      Returns:
      a new builder object that captures the T0 type parameter
    • andAccumulate0

      @Nonnull public <T0> AggregateOperationBuilder.Arity1<T0,A,Void> andAccumulate0(@Nonnull BiConsumerEx<? super A,? super T0> accumulateFn0)
      Registers the accumulate primitive for stream-0. Also selects the fixed-arity variant of the aggregate operation.
      Type Parameters:
      T0 - the expected type of item in stream-0
      Parameters:
      accumulateFn0 - the accumulate primitive for stream-0. It must be stateless and cooperative.
      Returns:
      a new builder object that captures the T0 type parameter
    • varArity

      Selects the variable-arity variant for this aggregate operation builder.
      Returns:
      a new builder object for variable-arity aggregate operations which has the createFn of the current builder
    • andAccumulate

      @Nonnull public <T> AggregateOperationBuilder.VarArity<A,Void> andAccumulate(@Nonnull Tag<T> tag, @Nonnull BiConsumerEx<? super A,? super T> accumulateFn)
      Registers the accumulate primitive for the stream tagged with the supplied tag. Also selects the variable-arity variant of the aggregate operation.
      Type Parameters:
      T - the expected type of input item
      Parameters:
      tag - the tag of the associated input stream
      accumulateFn - the accumulate primitive. It must be stateless and cooperative.
      Returns:
      a new builder object for variable-arity aggregate operations which has the createFn of the current builder