Class DroolsAbstractQuadConstraintStream<Solution_,A,B,C,D>
java.lang.Object
org.optaplanner.constraint.streams.common.AbstractConstraintStream<Solution_>
org.optaplanner.constraint.streams.drools.common.DroolsAbstractConstraintStream<Solution_,QuadLeftHandSide<A,B,C,D>>
org.optaplanner.constraint.streams.drools.quad.DroolsAbstractQuadConstraintStream<Solution_,A,B,C,D>
- All Implemented Interfaces:
org.optaplanner.constraint.streams.common.quad.InnerQuadConstraintStream<A,,B, C, D> org.optaplanner.core.api.score.stream.ConstraintStream,org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,B, C, D>
- Direct Known Subclasses:
DroolsExistsQuadConstraintStream,DroolsFilterQuadConstraintStream,DroolsFlatteningQuadConstraintStream,DroolsGroupingQuadConstraintStream,DroolsJoinQuadConstraintStream
public abstract class DroolsAbstractQuadConstraintStream<Solution_,A,B,C,D>
extends DroolsAbstractConstraintStream<Solution_,QuadLeftHandSide<A,B,C,D>>
implements org.optaplanner.constraint.streams.common.quad.InnerQuadConstraintStream<A,B,C,D>
-
Field Summary
Fields inherited from class org.optaplanner.constraint.streams.drools.common.DroolsAbstractConstraintStream
constraintFactory -
Constructor Summary
ConstructorsConstructorDescriptionDroolsAbstractQuadConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, org.optaplanner.constraint.streams.common.RetrievalSemantics retrievalSemantics) -
Method Summary
Modifier and TypeMethodDescriptionflattenLast(Function<D, Iterable<ResultD_>> mapping) protected final org.optaplanner.core.api.function.QuadFunction<A,B, C, D, Collection<?>> protected final org.optaplanner.core.api.function.PentaFunction<A,B, C, D, org.optaplanner.core.api.score.Score<?>, org.optaplanner.core.api.score.stream.DefaultConstraintJustification> <GroupKey_>
org.optaplanner.core.api.score.stream.uni.UniConstraintStream<GroupKey_><GroupKey_,ResultContainer_, Result_>
org.optaplanner.core.api.score.stream.bi.BiConstraintStream<GroupKey_,Result_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKey_,ResultB_, ResultC_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKey_,ResultB_, ResultC_, ResultD_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_>
org.optaplanner.core.api.score.stream.bi.BiConstraintStream<GroupKeyA_,GroupKeyB_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_>
org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyD_> groupKeyDMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultContainerD_, ResultD_>
org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultD_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) <GroupKeyA_,GroupKeyB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,GroupKeyB_, ResultC_, ResultD_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) <ResultContainer_,Result_>
org.optaplanner.core.api.score.stream.uni.UniConstraintStream<Result_>groupBy(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_>
org.optaplanner.core.api.score.stream.bi.BiConstraintStream<ResultA_,ResultB_> groupBy(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
org.optaplanner.core.api.score.stream.tri.TriConstraintStream<ResultA_,ResultB_, ResultC_> groupBy(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<ResultA_,ResultB_, ResultC_, ResultD_> groupBy(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) ifExists(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A, B, C, D, E>... joiners) ifExistsIncludingNullVars(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A, B, C, D, E>... joiners) ifNotExists(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A, B, C, D, E>... joiners) ifNotExistsIncludingNullVars(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A, B, C, D, E>... joiners) <Score_ extends org.optaplanner.core.api.score.Score<Score_>>
org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,B, C, D, Score_> innerImpact(Score_ constraintWeight, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, BigDecimal> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType) <Score_ extends org.optaplanner.core.api.score.Score<Score_>>
org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,B, C, D, Score_> innerImpact(Score_ constraintWeight, org.optaplanner.core.api.function.ToIntQuadFunction<A, B, C, D> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType) <Score_ extends org.optaplanner.core.api.score.Score<Score_>>
org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,B, C, D, Score_> innerImpact(Score_ constraintWeight, org.optaplanner.core.api.function.ToLongQuadFunction<A, B, C, D> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType) <ResultA_> org.optaplanner.core.api.score.stream.uni.UniConstraintStream<ResultA_>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.ConstraintStream
getConstraintFactoryMethods inherited from interface org.optaplanner.constraint.streams.common.quad.InnerQuadConstraintStream
distinct, guaranteesDistinct, impact, impact, impact, impactBigDecimal, impactConfigurable, impactConfigurableBigDecimal, impactConfigurableLong, impactLong, penalize, penalize, penalize, penalizeBigDecimal, penalizeConfigurable, penalizeConfigurable, penalizeConfigurable, penalizeConfigurableBigDecimal, penalizeConfigurableLong, penalizeLong, reward, reward, reward, rewardBigDecimal, rewardConfigurable, rewardConfigurable, rewardConfigurable, rewardConfigurableBigDecimal, rewardConfigurableLong, rewardLongMethods inherited from interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream
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, 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, rewardLong
-
Constructor Details
-
DroolsAbstractQuadConstraintStream
public DroolsAbstractQuadConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, org.optaplanner.constraint.streams.common.RetrievalSemantics retrievalSemantics)
-
-
Method Details
-
filter
-
ifExists
-
ifExistsIncludingNullVars
-
ifNotExists
-
ifNotExistsIncludingNullVars
-
groupBy
-
groupBy
public <ResultContainerA_,ResultA_, org.optaplanner.core.api.score.stream.bi.BiConstraintStream<ResultA_,ResultContainerB_, ResultB_> ResultB_> groupBy(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB) -
groupBy
public <ResultContainerA_,ResultA_, org.optaplanner.core.api.score.stream.tri.TriConstraintStream<ResultA_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_> ResultB_, groupByResultC_> (org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) -
groupBy
public <ResultContainerA_,ResultA_, org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<ResultA_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> ResultB_, groupByResultC_, ResultD_> (org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
-
groupBy
public <GroupKey_,ResultContainer_, org.optaplanner.core.api.score.stream.bi.BiConstraintStream<GroupKey_,Result_> Result_> groupBy(org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) -
groupBy
public <GroupKey_,ResultContainerB_, org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKey_,ResultB_, ResultContainerC_, ResultC_> ResultB_, groupByResultC_> (org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) -
groupBy
public <GroupKey_,ResultContainerB_, org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKey_,ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> ResultB_, groupByResultC_, ResultD_> (org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
-
groupBy
public <GroupKeyA_,GroupKeyB_, org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,ResultContainer_, Result_> GroupKeyB_, groupByResult_> (org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) -
groupBy
public <GroupKeyA_,GroupKeyB_, org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> GroupKeyB_, groupByResultC_, ResultD_> (org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
public <GroupKeyA_,GroupKeyB_, org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,GroupKeyC_> GroupKeyB_, groupByGroupKeyC_> (org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping) -
groupBy
public <GroupKeyA_,GroupKeyB_, org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,GroupKeyC_, ResultContainerD_, ResultD_> GroupKeyB_, groupByGroupKeyC_, ResultD_> (org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
public <GroupKeyA_,GroupKeyB_, org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,GroupKeyC_, GroupKeyD_> GroupKeyB_, groupByGroupKeyC_, GroupKeyD_> (org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, GroupKeyD_> groupKeyDMapping) -
map
-
flattenLast
-
innerImpact
public <Score_ extends org.optaplanner.core.api.score.Score<Score_>> org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,B, innerImpactC, D, Score_> (Score_ constraintWeight, org.optaplanner.core.api.function.ToIntQuadFunction<A, B, C, D> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType) -
innerImpact
public <Score_ extends org.optaplanner.core.api.score.Score<Score_>> org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,B, innerImpactC, D, Score_> (Score_ constraintWeight, org.optaplanner.core.api.function.ToLongQuadFunction<A, B, C, D> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType) -
innerImpact
public <Score_ extends org.optaplanner.core.api.score.Score<Score_>> org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,B, innerImpactC, D, Score_> (Score_ constraintWeight, org.optaplanner.core.api.function.QuadFunction<A, B, C, D, BigDecimal> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType) -
getDefaultJustificationMapping
protected final org.optaplanner.core.api.function.PentaFunction<A,B, getDefaultJustificationMapping()C, D, org.optaplanner.core.api.score.Score<?>, org.optaplanner.core.api.score.stream.DefaultConstraintJustification> - Specified by:
getDefaultJustificationMappingin classorg.optaplanner.constraint.streams.common.AbstractConstraintStream<Solution_>
-
getDefaultIndictedObjectsMapping
protected final org.optaplanner.core.api.function.QuadFunction<A,B, getDefaultIndictedObjectsMapping()C, D, Collection<?>> - Specified by:
getDefaultIndictedObjectsMappingin classorg.optaplanner.constraint.streams.common.AbstractConstraintStream<Solution_>
-