All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.fluxtion.runtime.dataflow.helpers.Aggregates Maven / Gradle / Ivy

package com.fluxtion.runtime.dataflow.helpers;

import com.fluxtion.runtime.dataflow.aggregate.function.AggregateIdentityFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.CountFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.DoubleAverageFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.DoubleIdentityFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.DoubleMaxFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.DoubleMinFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.DoubleSumFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.IntAverageFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.IntIdentityFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.IntMaxFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.IntMinFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.IntSumFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.LongAverageFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.LongIdentityFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.LongMaxFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.LongMinFlowFunction;
import com.fluxtion.runtime.dataflow.aggregate.function.primitive.LongSumFlowFunction;
import com.fluxtion.runtime.partition.LambdaReflection.SerializableSupplier;

public class Aggregates {

    public static  SerializableSupplier> identityFactory() {
        return AggregateIdentityFlowFunction::new;
    }

    public static SerializableSupplier intIdentityFactory() {
        return IntIdentityFlowFunction::new;
    }

    public static SerializableSupplier doubleIdentityFactory() {
        return DoubleIdentityFlowFunction::new;
    }

    public static SerializableSupplier longIdentityFactory() {
        return LongIdentityFlowFunction::new;
    }

    public static  SerializableSupplier> countFactory() {
        return CountFlowFunction::new;
    }

    //SUM
    public static SerializableSupplier intSumFactory() {
        return IntSumFlowFunction::new;
    }

    public static SerializableSupplier doubleSumFactory() {
        return DoubleSumFlowFunction::new;
    }

    public static SerializableSupplier longSumFactory() {
        return LongSumFlowFunction::new;
    }

    //max
    public static SerializableSupplier intMaxFactory() {
        return IntMaxFlowFunction::new;
    }

    public static SerializableSupplier longMaxFactory() {
        return LongMaxFlowFunction::new;
    }

    public static SerializableSupplier doubleMaxFactory() {
        return DoubleMaxFlowFunction::new;
    }

    //min
    public static SerializableSupplier intMinFactory() {
        return IntMinFlowFunction::new;
    }

    public static SerializableSupplier longMinFactory() {
        return LongMinFlowFunction::new;
    }

    public static SerializableSupplier doubleMinFactory() {
        return DoubleMinFlowFunction::new;
    }

    //AVERAGE
    public static SerializableSupplier intAverageFactory() {
        return IntAverageFlowFunction::new;
    }

    public static SerializableSupplier doubleAverageFactory() {
        return DoubleAverageFlowFunction::new;
    }

    public static SerializableSupplier longAverageFactory() {
        return LongAverageFlowFunction::new;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy