Class BavetJoinTriConstraintStream<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.BavetJoinTriConstraintStream<Solution_,A,B,C>
-
- All Implemented Interfaces:
ConstraintStream,TriConstraintStream<A,B,C>,BavetJoinConstraintStream<Solution_>,InnerTriConstraintStream<A,B,C>
public final class BavetJoinTriConstraintStream<Solution_,A,B,C> extends BavetAbstractTriConstraintStream<Solution_,A,B,C> implements BavetJoinConstraintStream<Solution_>
-
-
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 BavetJoinTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractBiConstraintStream<Solution_,A,B> leftParent, BavetAbstractUniConstraintStream<Solution_,C> rightParent)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected BavetJoinTriNode<A,B,C>createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,B,C> parentNode)BavetJoinTriNode<A,B,C>createNodeChain(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetJoinBridgeNode leftNode_, BavetJoinBridgeNode rightNode_)List<BavetFromUniConstraintStream<Solution_,Object>>getFromStreamList()booleanguaranteesDistinct()This method will return true if the constraint stream is guaranteed to only produce distinct tuples.StringtoString()-
Methods inherited from class org.optaplanner.core.impl.score.stream.bavet.tri.BavetAbstractTriConstraintStream
addChildStream, createChildNodeChains, createNodeChain, filter, flattenLast, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, ifExists, ifNotExists, impactScore, impactScore, impactScoreBigDecimal, impactScoreConfigurable, impactScoreConfigurable, impactScoreConfigurableBigDecimal, impactScoreConfigurableLong, impactScoreLong, 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, 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, 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, ifNotExists, ifNotExists, ifNotExists, ifNotExists, impact, impactBigDecimal, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableLong, impactLong, join, join, join, join, join, join, join, join, join, join, join, penalize, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeLong, reward, rewardBigDecimal, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardLong
-
-
-
-
Constructor Detail
-
BavetJoinTriConstraintStream
public BavetJoinTriConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractBiConstraintStream<Solution_,A,B> leftParent, BavetAbstractUniConstraintStream<Solution_,C> rightParent)
-
-
Method Detail
-
guaranteesDistinct
public boolean guaranteesDistinct()
Description copied from interface:InnerTriConstraintStreamThis method will return true if the constraint stream is guaranteed to only produce distinct tuples. SeeInnerTriConstraintStream.distinct()for details.- Specified by:
guaranteesDistinctin interfaceInnerTriConstraintStream<Solution_,A,B>- Returns:
- true if the guarantee of distinct tuples is provided
-
getFromStreamList
public List<BavetFromUniConstraintStream<Solution_,Object>> getFromStreamList()
- Specified by:
getFromStreamListin classBavetAbstractConstraintStream<Solution_>
-
createNodeChain
public BavetJoinTriNode<A,B,C> createNodeChain(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetJoinBridgeNode leftNode_, BavetJoinBridgeNode rightNode_)
- Specified by:
createNodeChainin interfaceBavetJoinConstraintStream<Solution_>
-
createNode
protected BavetJoinTriNode<A,B,C> createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractTriNode<A,B,C> parentNode)
- Specified by:
createNodein classBavetAbstractTriConstraintStream<Solution_,A,B,C>
-
-