Class AbstractGroupNode<InTuple_ extends Tuple,OutTuple_ extends Tuple,MutableOutTuple_ extends OutTuple_,GroupKey_,ResultContainer_,Result_>
- java.lang.Object
-
- org.optaplanner.constraint.streams.bavet.common.AbstractNode
-
- org.optaplanner.constraint.streams.bavet.common.AbstractGroupNode<InTuple_,OutTuple_,MutableOutTuple_,GroupKey_,ResultContainer_,Result_>
-
- All Implemented Interfaces:
TupleLifecycle<InTuple_>
public abstract class AbstractGroupNode<InTuple_ extends Tuple,OutTuple_ extends Tuple,MutableOutTuple_ extends OutTuple_,GroupKey_,ResultContainer_,Result_> extends AbstractNode implements TupleLifecycle<InTuple_>
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractGroupNode(int groupStoreIndex, Function<InTuple_,GroupKey_> groupKeyFunction, Supplier<ResultContainer_> supplier, Function<ResultContainer_,Result_> finisher, TupleLifecycle<OutTuple_> nextNodesTupleLifecycle)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract Runnableaccumulate(ResultContainer_ resultContainer, InTuple_ tuple)voidcalculateScore()protected abstract MutableOutTuple_createOutTuple(GroupKey_ groupKey)voidinsert(InTuple_ tuple)voidretract(InTuple_ tuple)voidupdate(InTuple_ tuple)protected abstract voidupdateOutTupleToResult(MutableOutTuple_ outTuple, Result_ result)-
Methods inherited from class org.optaplanner.constraint.streams.bavet.common.AbstractNode
setId, toString
-
-
-
-
Constructor Detail
-
AbstractGroupNode
protected AbstractGroupNode(int groupStoreIndex, Function<InTuple_,GroupKey_> groupKeyFunction, Supplier<ResultContainer_> supplier, Function<ResultContainer_,Result_> finisher, TupleLifecycle<OutTuple_> nextNodesTupleLifecycle)
-
-
Method Detail
-
insert
public void insert(InTuple_ tuple)
- Specified by:
insertin interfaceTupleLifecycle<InTuple_ extends Tuple>
-
update
public void update(InTuple_ tuple)
- Specified by:
updatein interfaceTupleLifecycle<InTuple_ extends Tuple>
-
retract
public void retract(InTuple_ tuple)
- Specified by:
retractin interfaceTupleLifecycle<InTuple_ extends Tuple>
-
accumulate
protected abstract Runnable accumulate(ResultContainer_ resultContainer, InTuple_ tuple)
-
calculateScore
public void calculateScore()
- Specified by:
calculateScorein classAbstractNode
-
createOutTuple
protected abstract MutableOutTuple_ createOutTuple(GroupKey_ groupKey)
- Parameters:
groupKey- null if the node only has one group- Returns:
- never null
-
updateOutTupleToResult
protected abstract void updateOutTupleToResult(MutableOutTuple_ outTuple, Result_ result)
-
-