Class BavetJoinBridgeBiConstraintStream<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.BavetJoinBridgeBiConstraintStream<Solution_,A,B>
-
- All Implemented Interfaces:
BiConstraintStream<A,B>
,ConstraintStream
,BavetJoinBridgeConstraintStream<Solution_>
,InnerBiConstraintStream<A,B>
public final class BavetJoinBridgeBiConstraintStream<Solution_,A,B> extends BavetAbstractBiConstraintStream<Solution_,A,B> implements BavetJoinBridgeConstraintStream<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 BavetJoinBridgeBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractBiConstraintStream<Solution_,A,B> parent, boolean isLeftBridge, BiFunction<A,B,Object[]> mapping, BavetIndexFactory indexFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
createChildNodeChains(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,B> uncastedNode)
protected BavetJoinBridgeBiNode<A,B>
createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,B> parentNode)
List<BavetFromUniConstraintStream<Solution_,Object>>
getFromStreamList()
boolean
guaranteesDistinct()
This method will return true if the constraint stream is guaranteed to only produce distinct tuples.void
setJoinStream(BavetJoinConstraintStream<Solution_> joinStream)
String
toString()
-
Methods inherited from class org.optaplanner.core.impl.score.stream.bavet.bi.BavetAbstractBiConstraintStream
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.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
-
BavetJoinBridgeBiConstraintStream
public BavetJoinBridgeBiConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractBiConstraintStream<Solution_,A,B> parent, boolean isLeftBridge, BiFunction<A,B,Object[]> mapping, BavetIndexFactory indexFactory)
-
-
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
-
setJoinStream
public void setJoinStream(BavetJoinConstraintStream<Solution_> joinStream)
-
getFromStreamList
public List<BavetFromUniConstraintStream<Solution_,Object>> getFromStreamList()
- Specified by:
getFromStreamList
in classBavetAbstractConstraintStream<Solution_>
-
createNode
protected BavetJoinBridgeBiNode<A,B> createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,B> parentNode)
- Specified by:
createNode
in classBavetAbstractBiConstraintStream<Solution_,A,B>
-
createChildNodeChains
protected void createChildNodeChains(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractBiNode<A,B> uncastedNode)
- Overrides:
createChildNodeChains
in classBavetAbstractBiConstraintStream<Solution_,A,B>
-
-