Class DroolsAbstractBiConstraintStream<Solution_,A,B>
java.lang.Object
org.optaplanner.constraint.streams.common.AbstractConstraintStream<Solution_>
org.optaplanner.constraint.streams.drools.common.DroolsAbstractConstraintStream<Solution_,BiLeftHandSide<A,B>>
org.optaplanner.constraint.streams.drools.bi.DroolsAbstractBiConstraintStream<Solution_,A,B>
- All Implemented Interfaces:
InnerBiConstraintStream<A,,B> BiConstraintStream<A,,B> ConstraintStream
- Direct Known Subclasses:
DroolsExistsBiConstraintStream,DroolsFilterBiConstraintStream,DroolsFlatteningBiConstraintStream,DroolsGroupingBiConstraintStream,DroolsJoinBiConstraintStream
public abstract class DroolsAbstractBiConstraintStream<Solution_,A,B>
extends DroolsAbstractConstraintStream<Solution_,BiLeftHandSide<A,B>>
implements InnerBiConstraintStream<A,B>
-
Field Summary
Fields inherited from class org.optaplanner.constraint.streams.drools.common.DroolsAbstractConstraintStream
constraintFactory -
Constructor Summary
ConstructorsConstructorDescriptionDroolsAbstractBiConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, RetrievalSemantics retrievalSemantics) -
Method Summary
Modifier and TypeMethodDescriptionfilter(BiPredicate<A, B> predicate) <ResultB_> BiConstraintStream<A,ResultB_> flattenLast(Function<B, Iterable<ResultB_>> mapping) protected final BiFunction<A,B, Collection<?>> protected final TriFunction<A,B, Score<?>, DefaultConstraintJustification> <GroupKey_>
UniConstraintStream<GroupKey_>groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping) <GroupKey_,__, Result_>
BiConstraintStream<GroupKey_,Result_> groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, __, Result_> collector) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKey_,ResultB_, ResultC_, ResultD_> groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_>
BiConstraintStream<GroupKeyA_,GroupKeyB_> groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_> groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping, BiFunction<A, B, GroupKeyD_> groupKeyDMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultD_> groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A, B, ResultContainer_, Result_> collector) <GroupKeyA_,GroupKeyB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, ResultC_, ResultD_> groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) <ResultContainer_,Result_>
UniConstraintStream<Result_>groupBy(BiConstraintCollector<A, B, ResultContainer_, Result_> collector) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_>
BiConstraintStream<ResultA_,ResultB_> groupBy(BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> groupBy(BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<ResultA_,ResultB_, ResultC_, ResultD_> groupBy(BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) final <C> BiConstraintStream<A,B> final <C> BiConstraintStream<A,B> ifExistsIncludingNullVars(Class<C> otherClass, TriJoiner<A, B, C>... joiners) final <C> BiConstraintStream<A,B> ifNotExists(Class<C> otherClass, TriJoiner<A, B, C>... joiners) final <C> BiConstraintStream<A,B> ifNotExistsIncludingNullVars(Class<C> otherClass, TriJoiner<A, B, C>... joiners) <Score_ extends Score<Score_>>
BiConstraintBuilder<A,B, Score_> innerImpact(Score_ constraintWeight, BiFunction<A, B, BigDecimal> matchWeigher, ScoreImpactType scoreImpactType) <Score_ extends Score<Score_>>
BiConstraintBuilder<A,B, Score_> innerImpact(Score_ constraintWeight, ToIntBiFunction<A, B> matchWeigher, ScoreImpactType scoreImpactType) <Score_ extends Score<Score_>>
BiConstraintBuilder<A,B, Score_> innerImpact(Score_ constraintWeight, ToLongBiFunction<A, B> matchWeigher, ScoreImpactType scoreImpactType) final <C> TriConstraintStream<A,B, C> join(UniConstraintStream<C> otherStream, TriJoiner<A, B, C>... joiners) <ResultA_> UniConstraintStream<ResultA_>map(BiFunction<A, B, ResultA_> mapping) Methods inherited from class org.optaplanner.constraint.streams.drools.common.DroolsAbstractConstraintStream
addChildStream, buildConstraint, createLeftHandSide, getChildStreams, getConstraintFactoryMethods inherited from class org.optaplanner.constraint.streams.common.AbstractConstraintStream
buildConstraintWeightExtractor, buildConstraintWeightExtractor, getRetrievalSemanticsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods 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, impact, impact, impactBigDecimal, impactBigDecimal, impactConfigurable, impactConfigurable, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableBigDecimal, impactConfigurableLong, impactConfigurableLong, impactLong, impactLong, join, join, join, join, join, join, join, join, join, join, penalize, penalize, penalize, penalizeBigDecimal, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurable, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeConfigurableLong, penalizeLong, penalizeLong, reward, reward, reward, rewardBigDecimal, rewardBigDecimal, rewardConfigurable, rewardConfigurable, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardConfigurableLong, rewardLong, rewardLongMethods inherited from interface org.optaplanner.core.api.score.stream.ConstraintStream
getConstraintFactoryMethods inherited from interface org.optaplanner.constraint.streams.common.bi.InnerBiConstraintStream
distinct, getRetrievalSemantics, guaranteesDistinct, impact, impact, impact, impactBigDecimal, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableLong, impactLong, join, penalize, penalize, penalize, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurable, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeLong, reward, reward, reward, rewardBigDecimal, rewardConfigurable, rewardConfigurable, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardLong
-
Constructor Details
-
DroolsAbstractBiConstraintStream
public DroolsAbstractBiConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, RetrievalSemantics retrievalSemantics)
-
-
Method Details
-
filter
- Specified by:
filterin interfaceBiConstraintStream<Solution_,A>
-
join
@SafeVarargs public final <C> TriConstraintStream<A,B, joinC> (UniConstraintStream<C> otherStream, TriJoiner<A, B, C>... joiners) - Specified by:
joinin interfaceBiConstraintStream<Solution_,A>
-
ifExists
@SafeVarargs public final <C> BiConstraintStream<A,B> ifExists(Class<C> otherClass, TriJoiner<A, B, C>... joiners) - Specified by:
ifExistsin interfaceBiConstraintStream<Solution_,A>
-
ifExistsIncludingNullVars
@SafeVarargs public final <C> BiConstraintStream<A,B> ifExistsIncludingNullVars(Class<C> otherClass, TriJoiner<A, B, C>... joiners) - Specified by:
ifExistsIncludingNullVarsin interfaceBiConstraintStream<Solution_,A>
-
ifNotExists
@SafeVarargs public final <C> BiConstraintStream<A,B> ifNotExists(Class<C> otherClass, TriJoiner<A, B, C>... joiners) - Specified by:
ifNotExistsin interfaceBiConstraintStream<Solution_,A>
-
ifNotExistsIncludingNullVars
@SafeVarargs public final <C> BiConstraintStream<A,B> ifNotExistsIncludingNullVars(Class<C> otherClass, TriJoiner<A, B, C>... joiners) - Specified by:
ifNotExistsIncludingNullVarsin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <ResultContainer_,Result_> UniConstraintStream<Result_> groupBy(BiConstraintCollector<A, B, ResultContainer_, Result_> collector) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <ResultContainerA_,ResultA_, BiConstraintStream<ResultA_,ResultContainerB_, ResultB_> ResultB_> groupBy(BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <ResultContainerA_,ResultA_, TriConstraintStream<ResultA_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_> ResultB_, groupByResultC_> (BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <ResultContainerA_,ResultA_, QuadConstraintStream<ResultA_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> ResultB_, groupByResultC_, ResultD_> (BiConstraintCollector<A, B, ResultContainerA_, ResultA_> collectorA, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKey_> UniConstraintStream<GroupKey_> groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKey_,__, BiConstraintStream<GroupKey_,Result_> Result_> groupBy(BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, __, Result_> collector) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKey_,ResultContainerB_, TriConstraintStream<GroupKey_,ResultB_, ResultContainerC_, ResultC_> ResultB_, groupByResultC_> (BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKey_,ResultContainerB_, QuadConstraintStream<GroupKey_,ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> ResultB_, groupByResultC_, ResultD_> (BiFunction<A, B, GroupKey_> groupKeyMapping, BiConstraintCollector<A, B, ResultContainerB_, ResultB_> collectorB, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKeyA_,GroupKeyB_> BiConstraintStream<GroupKeyA_,GroupKeyB_> groupBy(BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKeyA_,GroupKeyB_, TriConstraintStream<GroupKeyA_,ResultContainer_, Result_> GroupKeyB_, groupByResult_> (BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A, B, ResultContainer_, Result_> collector) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKeyA_,GroupKeyB_, QuadConstraintStream<GroupKeyA_,ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> GroupKeyB_, groupByResultC_, ResultD_> (BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A, B, ResultContainerC_, ResultC_> collectorC, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKeyA_,GroupKeyB_, TriConstraintStream<GroupKeyA_,GroupKeyC_> GroupKeyB_, groupByGroupKeyC_> (BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKeyA_,GroupKeyB_, QuadConstraintStream<GroupKeyA_,GroupKeyC_, ResultContainerD_, ResultD_> GroupKeyB_, groupByGroupKeyC_, ResultD_> (BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping, BiConstraintCollector<A, B, ResultContainerD_, ResultD_> collectorD) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
groupBy
public <GroupKeyA_,GroupKeyB_, QuadConstraintStream<GroupKeyA_,GroupKeyC_, GroupKeyD_> GroupKeyB_, groupByGroupKeyC_, GroupKeyD_> (BiFunction<A, B, GroupKeyA_> groupKeyAMapping, BiFunction<A, B, GroupKeyB_> groupKeyBMapping, BiFunction<A, B, GroupKeyC_> groupKeyCMapping, BiFunction<A, B, GroupKeyD_> groupKeyDMapping) - Specified by:
groupByin interfaceBiConstraintStream<Solution_,A>
-
map
- Specified by:
mapin interfaceBiConstraintStream<Solution_,A>
-
flattenLast
public <ResultB_> BiConstraintStream<A,ResultB_> flattenLast(Function<B, Iterable<ResultB_>> mapping) - Specified by:
flattenLastin interfaceBiConstraintStream<Solution_,A>
-
innerImpact
public <Score_ extends Score<Score_>> BiConstraintBuilder<A,B, innerImpactScore_> (Score_ constraintWeight, ToIntBiFunction<A, B> matchWeigher, ScoreImpactType scoreImpactType) - Specified by:
innerImpactin interfaceInnerBiConstraintStream<Solution_,A>
-
innerImpact
public <Score_ extends Score<Score_>> BiConstraintBuilder<A,B, innerImpactScore_> (Score_ constraintWeight, ToLongBiFunction<A, B> matchWeigher, ScoreImpactType scoreImpactType) - Specified by:
innerImpactin interfaceInnerBiConstraintStream<Solution_,A>
-
innerImpact
public <Score_ extends Score<Score_>> BiConstraintBuilder<A,B, innerImpactScore_> (Score_ constraintWeight, BiFunction<A, B, BigDecimal> matchWeigher, ScoreImpactType scoreImpactType) - Specified by:
innerImpactin interfaceInnerBiConstraintStream<Solution_,A>
-
getDefaultJustificationMapping
protected final TriFunction<A,B, getDefaultJustificationMapping()Score<?>, DefaultConstraintJustification> - Specified by:
getDefaultJustificationMappingin classAbstractConstraintStream<Solution_>
-
getDefaultIndictedObjectsMapping
- Specified by:
getDefaultIndictedObjectsMappingin classAbstractConstraintStream<Solution_>
-