Class BavetJoinBiConstraintStream<Solution_,A,B>
- 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.bi.BavetAbstractBiConstraintStream<Solution_,A,B>
-
- org.optaplanner.core.impl.score.stream.bavet.bi.BavetJoinBiConstraintStream<Solution_,A,B>
-
- All Implemented Interfaces:
BiConstraintStream<A,B>
,ConstraintStream
,BavetJoinConstraintStream<Solution_>
,InnerBiConstraintStream<A,B>
public final class BavetJoinBiConstraintStream<Solution_,A,B> extends BavetAbstractBiConstraintStream<Solution_,A,B> implements BavetJoinConstraintStream<Solution_>
-
-
Field Summary
-
Fields inherited from class org.optaplanner.core.impl.score.stream.bavet.bi.BavetAbstractBiConstraintStream
childStreamList
-
Fields inherited from class org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractConstraintStream
constraintFactory
-
-
Constructor Summary
Constructors Constructor Description BavetJoinBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractUniConstraintStream<Solution_,A> leftParent, BavetAbstractUniConstraintStream<Solution_,B> rightParent)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected BavetJoinBiNode<A,B>
createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,B> parentNode)
BavetJoinBiNode<A,B>
createNodeChain(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetJoinBridgeNode leftNode_, BavetJoinBridgeNode rightNode_)
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.bi.BavetAbstractBiConstraintStream
addChildStream, createChildNodeChains, 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.bi.BiConstraintStream
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
-
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.bi.InnerBiConstraintStream
distinct, impact, impactBigDecimal, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableLong, impactLong, join, penalize, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeLong, reward, rewardBigDecimal, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardLong
-
-
-
-
Constructor Detail
-
BavetJoinBiConstraintStream
public BavetJoinBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractUniConstraintStream<Solution_,A> leftParent, BavetAbstractUniConstraintStream<Solution_,B> rightParent)
-
-
Method Detail
-
guaranteesDistinct
public boolean guaranteesDistinct()
Description copied from interface:InnerBiConstraintStream
This method will return true if the constraint stream is guaranteed to only produce distinct tuples. SeeInnerBiConstraintStream.distinct()
for details.- Specified by:
guaranteesDistinct
in interfaceInnerBiConstraintStream<Solution_,A>
- Returns:
- true if the guarantee of distinct tuples is provided
-
getFromStreamList
public List<BavetFromUniConstraintStream<Solution_,Object>> getFromStreamList()
- Specified by:
getFromStreamList
in classBavetAbstractConstraintStream<Solution_>
-
createNodeChain
public BavetJoinBiNode<A,B> createNodeChain(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetJoinBridgeNode leftNode_, BavetJoinBridgeNode rightNode_)
- Specified by:
createNodeChain
in interfaceBavetJoinConstraintStream<Solution_>
-
createNode
protected BavetJoinBiNode<A,B> createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,B> parentNode)
- Specified by:
createNode
in classBavetAbstractBiConstraintStream<Solution_,A,B>
-
-