Class DefaultQuadConstraintCollector<A,B,C,D,ResultContainer_,Result_>
- java.lang.Object
-
- org.optaplanner.core.impl.score.stream.quad.DefaultQuadConstraintCollector<A,B,C,D,ResultContainer_,Result_>
-
- All Implemented Interfaces:
QuadConstraintCollector<A,B,C,D,ResultContainer_,Result_>
public final class DefaultQuadConstraintCollector<A,B,C,D,ResultContainer_,Result_> extends Object implements QuadConstraintCollector<A,B,C,D,ResultContainer_,Result_>
-
-
Constructor Summary
Constructors Constructor Description DefaultQuadConstraintCollector(Supplier<ResultContainer_> supplier, PentaFunction<ResultContainer_,A,B,C,D,Runnable> accumulator, Function<ResultContainer_,Result_> finisher)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description PentaFunction<ResultContainer_,A,B,C,D,Runnable>
accumulator()
A lambda that extracts data from the matched facts, accumulates it in the result container and returns an undo operation for that accumulation.Function<ResultContainer_,Result_>
finisher()
A lambda that converts the result container into the result.static <A,B,C,D,Result_>
QuadConstraintCollector<A,B,C,D,?,Result_>noop()
Supplier<ResultContainer_>
supplier()
A lambda that creates the result container, one for each group key combination.
-
-
-
Constructor Detail
-
DefaultQuadConstraintCollector
public DefaultQuadConstraintCollector(Supplier<ResultContainer_> supplier, PentaFunction<ResultContainer_,A,B,C,D,Runnable> accumulator, Function<ResultContainer_,Result_> finisher)
-
-
Method Detail
-
noop
public static <A,B,C,D,Result_> QuadConstraintCollector<A,B,C,D,?,Result_> noop()
-
supplier
public Supplier<ResultContainer_> supplier()
Description copied from interface:QuadConstraintCollector
A lambda that creates the result container, one for each group key combination.- Specified by:
supplier
in interfaceQuadConstraintCollector<A,B,C,D,ResultContainer_,Result_>
- Returns:
- never null
-
accumulator
public PentaFunction<ResultContainer_,A,B,C,D,Runnable> accumulator()
Description copied from interface:QuadConstraintCollector
A lambda that extracts data from the matched facts, accumulates it in the result container and returns an undo operation for that accumulation.- Specified by:
accumulator
in interfaceQuadConstraintCollector<A,B,C,D,ResultContainer_,Result_>
- Returns:
- never null, the undo operation. This lambda is called when the facts no longer matches.
-
finisher
public Function<ResultContainer_,Result_> finisher()
Description copied from interface:QuadConstraintCollector
A lambda that converts the result container into the result.- Specified by:
finisher
in interfaceQuadConstraintCollector<A,B,C,D,ResultContainer_,Result_>
- Returns:
- never null
-
-