Class BavetJoinBridgeUniConstraintStream<Solution_,A>
- 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.uni.BavetAbstractUniConstraintStream<Solution_,A>
-
- org.optaplanner.core.impl.score.stream.bavet.uni.BavetJoinBridgeUniConstraintStream<Solution_,A>
-
- All Implemented Interfaces:
ConstraintStream,UniConstraintStream<A>,BavetJoinBridgeConstraintStream<Solution_>,InnerUniConstraintStream<A>
public final class BavetJoinBridgeUniConstraintStream<Solution_,A> extends BavetAbstractUniConstraintStream<Solution_,A> implements BavetJoinBridgeConstraintStream<Solution_>
-
-
Field Summary
-
Fields inherited from class org.optaplanner.core.impl.score.stream.bavet.uni.BavetAbstractUniConstraintStream
childStreamList
-
Fields inherited from class org.optaplanner.core.impl.score.stream.bavet.common.BavetAbstractConstraintStream
constraintFactory
-
-
Constructor Summary
Constructors Constructor Description BavetJoinBridgeUniConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractUniConstraintStream<Solution_,A> parent, boolean isLeftBridge, Function<A,Object[]> mapping, BavetIndexFactory indexFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcreateChildNodeChains(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> uncastedNode)protected BavetJoinBridgeUniNode<A>createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)List<BavetFromUniConstraintStream<Solution_,Object>>getFromStreamList()booleanguaranteesDistinct()This method will return true if the constraint stream is guaranteed to only produce distinct tuples.voidsetJoinStream(BavetJoinConstraintStream<Solution_> joinStream)StringtoString()-
Methods inherited from class org.optaplanner.core.impl.score.stream.bavet.uni.BavetAbstractUniConstraintStream
addChildStream, 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.uni.InnerUniConstraintStream
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.uni.UniConstraintStream
ifExists, ifExists, ifExists, ifExists, ifExistsOther, ifExistsOther, ifExistsOther, ifExistsOther, ifExistsOther, ifExistsOther, ifNotExists, ifNotExists, ifNotExists, ifNotExists, ifNotExistsOther, ifNotExistsOther, ifNotExistsOther, ifNotExistsOther, ifNotExistsOther, ifNotExistsOther, 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
-
BavetJoinBridgeUniConstraintStream
public BavetJoinBridgeUniConstraintStream(BavetConstraintFactory<Solution_> constraintFactory, BavetAbstractUniConstraintStream<Solution_,A> parent, boolean isLeftBridge, Function<A,Object[]> mapping, BavetIndexFactory indexFactory)
-
-
Method Detail
-
guaranteesDistinct
public boolean guaranteesDistinct()
Description copied from interface:InnerUniConstraintStreamThis method will return true if the constraint stream is guaranteed to only produce distinct tuples. SeeInnerUniConstraintStream.distinct()for details.- Specified by:
guaranteesDistinctin interfaceInnerUniConstraintStream<Solution_>- 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:
getFromStreamListin classBavetAbstractConstraintStream<Solution_>
-
createNode
protected BavetJoinBridgeUniNode<A> createNode(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> parentNode)
- Specified by:
createNodein classBavetAbstractUniConstraintStream<Solution_,A>
-
createChildNodeChains
protected void createChildNodeChains(BavetNodeBuildPolicy<Solution_> buildPolicy, Score<?> constraintWeight, BavetAbstractUniNode<A> uncastedNode)
- Overrides:
createChildNodeChainsin classBavetAbstractUniConstraintStream<Solution_,A>
-
-