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:
InnerQuadConstraintStream<A,,B, C, D> ConstraintStream,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 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, RetrievalSemantics retrievalSemantics) -
Method Summary
Modifier and TypeMethodDescription<ResultD_> QuadConstraintStream<A,B, C, ResultD_> flattenLast(Function<D, Iterable<ResultD_>> mapping) protected final QuadFunction<A,B, C, D, Collection<?>> protected final PentaFunction<A,B, C, D, Score<?>, DefaultConstraintJustification> <GroupKey_>
UniConstraintStream<GroupKey_><GroupKey_,ResultContainer_, Result_>
BiConstraintStream<GroupKey_,Result_> groupBy(QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<GroupKey_,ResultB_, ResultC_> groupBy(QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) <GroupKey_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKey_,ResultB_, ResultC_, ResultD_> groupBy(QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_>
BiConstraintStream<GroupKeyA_,GroupKeyB_> groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_> groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, GroupKeyD_> groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, QuadFunction<A, B, C, D, GroupKeyD_> groupKeyDMapping) <GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, GroupKeyC_, ResultD_> groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) <GroupKeyA_,GroupKeyB_, ResultContainer_, Result_>
TriConstraintStream<GroupKeyA_,GroupKeyB_, Result_> groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) <GroupKeyA_,GroupKeyB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<GroupKeyA_,GroupKeyB_, ResultC_, ResultD_> groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) <ResultContainer_,Result_>
UniConstraintStream<Result_><ResultContainerA_,ResultA_, ResultContainerB_, ResultB_>
BiConstraintStream<ResultA_,ResultB_> groupBy(QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_>
TriConstraintStream<ResultA_,ResultB_, ResultC_> groupBy(QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) <ResultContainerA_,ResultA_, ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_>
QuadConstraintStream<ResultA_,ResultB_, ResultC_, ResultD_> groupBy(QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) final <E> QuadConstraintStream<A,B, C, D> final <E> QuadConstraintStream<A,B, C, D> ifExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A, B, C, D, E>... joiners) final <E> QuadConstraintStream<A,B, C, D> ifNotExists(Class<E> otherClass, PentaJoiner<A, B, C, D, E>... joiners) final <E> QuadConstraintStream<A,B, C, D> ifNotExistsIncludingNullVars(Class<E> otherClass, PentaJoiner<A, B, C, D, E>... joiners) innerImpact(Score_ constraintWeight, QuadFunction<A, B, C, D, BigDecimal> matchWeigher, ScoreImpactType scoreImpactType) innerImpact(Score_ constraintWeight, ToIntQuadFunction<A, B, C, D> matchWeigher, ScoreImpactType scoreImpactType) innerImpact(Score_ constraintWeight, ToLongQuadFunction<A, B, C, D> matchWeigher, ScoreImpactType scoreImpactType) <ResultA_> 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, RetrievalSemantics retrievalSemantics)
-
-
Method Details
-
filter
-
ifExists
@SafeVarargs public final <E> QuadConstraintStream<A,B, ifExistsC, D> (Class<E> otherClass, PentaJoiner<A, B, C, D, E>... joiners) -
ifExistsIncludingNullVars
@SafeVarargs public final <E> QuadConstraintStream<A,B, ifExistsIncludingNullVarsC, D> (Class<E> otherClass, PentaJoiner<A, B, C, D, E>... joiners) - Specified by:
ifExistsIncludingNullVarsin interfaceQuadConstraintStream<Solution_,A, B, C>
-
ifNotExists
@SafeVarargs public final <E> QuadConstraintStream<A,B, ifNotExistsC, D> (Class<E> otherClass, PentaJoiner<A, B, C, D, E>... joiners) - Specified by:
ifNotExistsin interfaceQuadConstraintStream<Solution_,A, B, C>
-
ifNotExistsIncludingNullVars
@SafeVarargs public final <E> QuadConstraintStream<A,B, ifNotExistsIncludingNullVarsC, D> (Class<E> otherClass, PentaJoiner<A, B, C, D, E>... joiners) - Specified by:
ifNotExistsIncludingNullVarsin interfaceQuadConstraintStream<Solution_,A, B, C>
-
groupBy
public <ResultContainer_,Result_> UniConstraintStream<Result_> groupBy(QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) -
groupBy
public <ResultContainerA_,ResultA_, BiConstraintStream<ResultA_,ResultContainerB_, ResultB_> ResultB_> groupBy(QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB) -
groupBy
public <ResultContainerA_,ResultA_, TriConstraintStream<ResultA_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_> ResultB_, groupByResultC_> (QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) -
groupBy
public <ResultContainerA_,ResultA_, QuadConstraintStream<ResultA_,ResultContainerB_, ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> ResultB_, groupByResultC_, ResultD_> (QuadConstraintCollector<A, B, C, D, ResultContainerA_, ResultA_> collectorA, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
public <GroupKey_> UniConstraintStream<GroupKey_> groupBy(QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping) -
groupBy
public <GroupKey_,ResultContainer_, BiConstraintStream<GroupKey_,Result_> Result_> groupBy(QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) -
groupBy
public <GroupKey_,ResultContainerB_, TriConstraintStream<GroupKey_,ResultB_, ResultContainerC_, ResultC_> ResultB_, groupByResultC_> (QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC) -
groupBy
public <GroupKey_,ResultContainerB_, QuadConstraintStream<GroupKey_,ResultB_, ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> ResultB_, groupByResultC_, ResultD_> (QuadFunction<A, B, C, D, GroupKey_> groupKeyMapping, QuadConstraintCollector<A, B, C, D, ResultContainerB_, ResultB_> collectorB, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
public <GroupKeyA_,GroupKeyB_> BiConstraintStream<GroupKeyA_,GroupKeyB_> groupBy(QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping) -
groupBy
public <GroupKeyA_,GroupKeyB_, TriConstraintStream<GroupKeyA_,ResultContainer_, Result_> GroupKeyB_, groupByResult_> (QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadConstraintCollector<A, B, C, D, ResultContainer_, Result_> collector) -
groupBy
public <GroupKeyA_,GroupKeyB_, QuadConstraintStream<GroupKeyA_,ResultContainerC_, ResultC_, ResultContainerD_, ResultD_> GroupKeyB_, groupByResultC_, ResultD_> (QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadConstraintCollector<A, B, C, D, ResultContainerC_, ResultC_> collectorC, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
public <GroupKeyA_,GroupKeyB_, TriConstraintStream<GroupKeyA_,GroupKeyC_> GroupKeyB_, groupByGroupKeyC_> (QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping) -
groupBy
public <GroupKeyA_,GroupKeyB_, QuadConstraintStream<GroupKeyA_,GroupKeyC_, ResultContainerD_, ResultD_> GroupKeyB_, groupByGroupKeyC_, ResultD_> (QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, QuadConstraintCollector<A, B, C, D, ResultContainerD_, ResultD_> collectorD) -
groupBy
public <GroupKeyA_,GroupKeyB_, QuadConstraintStream<GroupKeyA_,GroupKeyC_, GroupKeyD_> GroupKeyB_, groupByGroupKeyC_, GroupKeyD_> (QuadFunction<A, B, C, D, GroupKeyA_> groupKeyAMapping, QuadFunction<A, B, C, D, GroupKeyB_> groupKeyBMapping, QuadFunction<A, B, C, D, GroupKeyC_> groupKeyCMapping, QuadFunction<A, B, C, D, GroupKeyD_> groupKeyDMapping) -
map
-
flattenLast
public <ResultD_> QuadConstraintStream<A,B, flattenLastC, ResultD_> (Function<D, Iterable<ResultD_>> mapping) - Specified by:
flattenLastin interfaceQuadConstraintStream<Solution_,A, B, C>
-
innerImpact
public <Score_ extends Score<Score_>> QuadConstraintBuilder<A,B, innerImpactC, D, Score_> (Score_ constraintWeight, ToIntQuadFunction<A, B, C, D> matchWeigher, ScoreImpactType scoreImpactType) - Specified by:
innerImpactin interfaceInnerQuadConstraintStream<Solution_,A, B, C>
-
innerImpact
public <Score_ extends Score<Score_>> QuadConstraintBuilder<A,B, innerImpactC, D, Score_> (Score_ constraintWeight, ToLongQuadFunction<A, B, C, D> matchWeigher, ScoreImpactType scoreImpactType) - Specified by:
innerImpactin interfaceInnerQuadConstraintStream<Solution_,A, B, C>
-
innerImpact
public <Score_ extends Score<Score_>> QuadConstraintBuilder<A,B, innerImpactC, D, Score_> (Score_ constraintWeight, QuadFunction<A, B, C, D, BigDecimal> matchWeigher, ScoreImpactType scoreImpactType) - Specified by:
innerImpactin interfaceInnerQuadConstraintStream<Solution_,A, B, C>
-
getDefaultJustificationMapping
protected final PentaFunction<A,B, getDefaultJustificationMapping()C, D, Score<?>, DefaultConstraintJustification> - Specified by:
getDefaultJustificationMappingin classAbstractConstraintStream<Solution_>
-
getDefaultIndictedObjectsMapping
- Specified by:
getDefaultIndictedObjectsMappingin classAbstractConstraintStream<Solution_>
-