Class DroolsFilterQuadConstraintStream<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>
org.optaplanner.constraint.streams.drools.quad.DroolsFilterQuadConstraintStream<Solution_,A,B,C,D>
- All Implemented Interfaces:
InnerQuadConstraintStream<A,
,B, C, D> ConstraintStream
,QuadConstraintStream<A,
B, C, D>
public final class DroolsFilterQuadConstraintStream<Solution_,A,B,C,D>
extends DroolsAbstractQuadConstraintStream<Solution_,A,B,C,D>
-
Field Summary
Fields inherited from class org.optaplanner.constraint.streams.drools.common.DroolsAbstractConstraintStream
constraintFactory
-
Constructor Summary
ConstructorsConstructorDescriptionDroolsFilterQuadConstraintStream
(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractQuadConstraintStream<Solution_, A, B, C, D> parent, QuadPredicate<A, B, C, D> predicate) -
Method Summary
Methods inherited from class org.optaplanner.constraint.streams.drools.quad.DroolsAbstractQuadConstraintStream
filter, flattenLast, getDefaultIndictedObjectsMapping, getDefaultJustificationMapping, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, groupBy, ifExists, ifExistsIncludingNullVars, ifNotExists, ifNotExistsIncludingNullVars, innerImpact, innerImpact, innerImpact, map
Methods inherited from class org.optaplanner.constraint.streams.drools.common.DroolsAbstractConstraintStream
addChildStream, buildConstraint, getChildStreams, getConstraintFactory
Methods inherited from class org.optaplanner.constraint.streams.common.AbstractConstraintStream
buildConstraintWeightExtractor, buildConstraintWeightExtractor, getRetrievalSemantics
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
Methods inherited from interface org.optaplanner.constraint.streams.common.quad.InnerQuadConstraintStream
distinct, 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, rewardLong
Methods 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
-
DroolsFilterQuadConstraintStream
public DroolsFilterQuadConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractQuadConstraintStream<Solution_, A, B, C, D> parent, QuadPredicate<A, B, C, D> predicate)
-
-
Method Details
-
guaranteesDistinct
public boolean guaranteesDistinct() -
createLeftHandSide
Description copied from class:DroolsAbstractConstraintStream
Some constructs in the Drools executable model may not be reused between different rules. They are, among others, variable instances and beta indexes. Therefore an instance ofAbstractLeftHandSide
must never be used to create more than one rule. Therefore every constraint stream re-creates the entire chain of left hand sides every time a new rule is built. It is then left up to Drools to node-share everything it can.- Specified by:
createLeftHandSide
in classDroolsAbstractConstraintStream<Solution_,
QuadLeftHandSide<A, B, C, D>> - Returns:
- never null, different instance on every call
-
toString
-