Class BavetScoringTriConstraintStream<Solution_,A,B,C>
- java.lang.Object
-
- org.optaplanner.core.impl.score.stream.common.AbstractConstraintStream<Solution_>
-
- org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractConstraintStream<Solution_>
-
- org.optaplanner.core.impl.score.stream.bavet.tri.BavetAbstractTriConstraintStream<Solution_,A,B,C>
-
- org.optaplanner.core.impl.score.stream.bavet.tri.BavetScoringTriConstraintStream<Solution_,A,B,C>
-
- All Implemented Interfaces:
ConstraintStream
,TriConstraintStream<A,B,C>
,InnerTriConstraintStream<A,B,C>
public final class BavetScoringTriConstraintStream<Solution_,A,B,C> extends BavetAbstractTriConstraintStream<Solution_,A,B,C>
-
-
Field Summary
-
Fields inherited from class org.optaplanner.core.impl.score.stream.bavet.tri.BavetAbstractTriConstraintStream
childStreamList
-
Fields inherited from class org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractConstraintStream
constraintFactory
-
-
Constructor Summary
Constructors Constructor Description BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint)
BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint, ToIntTriFunction<A,B,C> intMatchWeigher)
BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint, ToLongTriFunction<A,B,C> longMatchWeigher)
BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint, TriFunction<A,B,C,BigDecimal> bigDecimalMatchWeigher)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
createChildNodeChains(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,B,C> node)
protected BavetScoringTriNode<A,B,C>
createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,B,C> parentNode)
List<BavetFromUniConstraintStream<Solution_,Object>>
getFromStreamList()
boolean
guaranteesDistinct()
This method will return true if the constraint stream is guaranteed to only produce distinct tuples.String
toString()
-
Methods inherited from class org.optaplanner.core.impl.score.stream.bavet.tri.BavetAbstractTriConstraintStream
addChildStream, createNodeChain, filter, flattenLast, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, ifExists, ifExistsIncludingNullVars, ifNotExists, ifNotExistsIncludingNullVars, impactScore, impactScore, impactScoreBigDecimal, impactScoreConfigurable, impactScoreConfigurable, impactScoreConfigurableBigDecimal, impactScoreConfigurableLong, impactScoreLong, join, join, map, processNode
-
Methods inherited from class org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractConstraintStream
buildConstraint, buildConstraintConfigurable, getConstraintFactory
-
Methods inherited from class org.optaplanner.core.impl.score.stream.common.AbstractConstraintStream
buildConstraintWeightExtractor, buildConstraintWeightExtractor, getRetrievalSemantics, impact, penalize, penalizeConfigurable, reward, rewardConfigurable
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.optaplanner.core.api.score.stream.ConstraintStream
getConstraintFactory, impact, impact, penalize, penalize, penalizeConfigurable, penalizeConfigurable, reward, reward, rewardConfigurable, rewardConfigurable
-
Methods inherited from interface org.optaplanner.core.impl.score.stream.tri.InnerTriConstraintStream
distinct, impact, impactBigDecimal, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableLong, impactLong, join, penalize, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeLong, reward, rewardBigDecimal, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardLong
-
Methods inherited from interface org.optaplanner.core.api.score.stream.tri.TriConstraintStream
ifExists, ifExists, ifExists, ifExists, ifExistsIncludingNullVars, ifExistsIncludingNullVars, ifExistsIncludingNullVars, ifExistsIncludingNullVars, ifNotExists, ifNotExists, ifNotExists, ifNotExists, ifNotExistsIncludingNullVars, ifNotExistsIncludingNullVars, ifNotExistsIncludingNullVars, ifNotExistsIncludingNullVars, impact, impactBigDecimal, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableLong, impactLong, join, join, join, join, join, join, join, join, join, penalize, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeLong, reward, rewardBigDecimal, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardLong
-
-
-
-
Constructor Detail
-
BavetScoringTriConstraintStream
public BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint)
-
BavetScoringTriConstraintStream
public BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint, ToIntTriFunction<A,B,C> intMatchWeigher)
-
BavetScoringTriConstraintStream
public BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint, ToLongTriFunction<A,B,C> longMatchWeigher)
-
BavetScoringTriConstraintStream
public BavetScoringTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractTriConstraintStream<Solution_,A,B,C> parent, BavetConstraint<Solution_> constraint, TriFunction<A,B,C,BigDecimal> bigDecimalMatchWeigher)
-
-
Method Detail
-
guaranteesDistinct
public boolean guaranteesDistinct()
Description copied from interface:InnerTriConstraintStream
This method will return true if the constraint stream is guaranteed to only produce distinct tuples. SeeInnerTriConstraintStream.distinct()
for details.- Returns:
- true if the guarantee of distinct tuples is provided
-
getFromStreamList
public List<BavetFromUniConstraintStream<Solution_,Object>> getFromStreamList()
- Specified by:
getFromStreamList
in classBavetAbstractConstraintStream<Solution_>
-
createNode
protected BavetScoringTriNode<A,B,C> createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,B,C> parentNode)
- Specified by:
createNode
in classBavetAbstractTriConstraintStream<Solution_,A,B,C>
-
createChildNodeChains
protected void createChildNodeChains(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,B,C> node)
- Overrides:
createChildNodeChains
in classBavetAbstractTriConstraintStream<Solution_,A,B,C>
-
-