org.optaplanner.core.impl.score.stream.drools.bi

## Class DroolsBiCondition<A,B,PatternVar>

- java.lang.Object
- - org.optaplanner.core.impl.score.stream.drools.common.DroolsCondition<PatternVar,DroolsBiRuleStructure<A,B,PatternVar>>
  - - org.optaplanner.core.impl.score.stream.drools.bi.DroolsBiCondition<A,B,PatternVar>

-     public final class DroolsBiCondition<A,B,PatternVar>
      extends DroolsCondition<PatternVar,DroolsBiRuleStructure<A,B,PatternVar>>

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.optaplanner.core.impl.score.stream.drools.common.DroolsCondition

      `DroolsCondition.ImmediatelyPreviousFilter<PredicateType>, DroolsCondition.Mutator<InTuple,OutPatternVar,R extends DroolsRuleStructure<OutPatternVar>,C extends DroolsCondition<OutPatternVar,R>>`

  - ### Field Summary

    - ### Fields inherited from class org.optaplanner.core.impl.score.stream.drools.common.DroolsCondition

      `ruleStructure`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DroolsBiCondition(DroolsBiRuleStructure<A,B,PatternVar> ruleStructure)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `<NewA,__> DroolsUniCondition<NewA,NewA>` | `andCollect(BiConstraintCollector<A,B,__,NewA> collector)`
    `DroolsBiCondition<A,B,PatternVar>` | `andFilter(BiPredicate<A,B> predicate)`
    `<NewA> DroolsUniCondition<NewA,?>` | `andGroup(BiFunction<A,B,NewA> groupKeyMapping)`
    `<NewA,NewB> DroolsBiCondition<NewA,NewB,?>` | `andGroupBi(BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping)`
    `<NewA,NewB,NewC> DroolsTriCondition<NewA,NewB,NewC,TriTuple<NewA,NewB,NewC>>` | `andGroupBiWithCollect(BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,?,NewC> collector)`
    `<NewA,NewB,NewC,NewD> DroolsQuadCondition<NewA,NewB,NewC,NewD,QuadTuple<NewA,NewB,NewC,NewD>>` | `andGroupBiWithCollectBi(BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,?,NewC> collectorC, BiConstraintCollector<A,B,?,NewD> collectorD)`
    `<NewA,NewB> DroolsBiCondition<NewA,NewB,BiTuple<NewA,NewB>>` | `andGroupWithCollect(BiFunction<A,B,NewA> groupKeyMapping, BiConstraintCollector<A,B,?,NewB> collector)`
    `<C> DroolsBiCondition<A,B,PatternVar>` | `andIfExists(Class<C> otherClass, TriJoiner<A,B,C>... joiners)`
    `<C> DroolsBiCondition<A,B,PatternVar>` | `andIfNotExists(Class<C> otherClass, TriJoiner<A,B,C>... joiners)`
    `<C,CPatternVar> DroolsTriCondition<A,B,C,CPatternVar>` | `andJoin(DroolsUniCondition<C,CPatternVar> cCondition, AbstractTriJoiner<A,B,C> triJoiner)`
    `protected <InTuple> org.drools.model.PatternDSL.PatternDef<PatternVar>` | `bindTupleVariableOnFirstGrouping(org.drools.model.PatternDSL.PatternDef<PatternVar> pattern, org.drools.model.Variable<InTuple> tupleVariable)`
    `List<org.drools.model.RuleItemBuilder<?>>` | `completeWithScoring(DroolsConstraint<?> constraint, org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal, BiFunction<A,B,BigDecimal> matchWeighter)`
    `List<org.drools.model.RuleItemBuilder<?>>` | `completeWithScoring(DroolsConstraint<?> constraint, org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal, ToIntBiFunction<A,B> matchWeighter)`
    `List<org.drools.model.RuleItemBuilder<?>>` | `completeWithScoring(DroolsConstraint<?> constraint, org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal, ToLongBiFunction<A,B> matchWeighter)`
    `List<org.drools.model.RuleItemBuilder<?>>` | `completeWithScoring(org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal)`

    - ### Methods inherited from class org.optaplanner.core.impl.score.stream.drools.common.DroolsCondition

      `collect, getExpectedJustificationTypes, getInnerAccumulatePattern, getRuleStructure, groupBiWithCollect, groupBiWithCollectBi, groupWithCollect, impactScore, impactScore, impactScore, impactScore`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DroolsBiCondition

          public DroolsBiCondition(DroolsBiRuleStructure<A,B,PatternVar> ruleStructure)

  - ### Method Detail

    - #### andFilter

          public DroolsBiCondition<A,B,PatternVar> andFilter(BiPredicate<A,B> predicate)

    - #### andJoin

          public <C,CPatternVar> DroolsTriCondition<A,B,C,CPatternVar> andJoin(DroolsUniCondition<C,CPatternVar> cCondition,
                                                                               AbstractTriJoiner<A,B,C> triJoiner)

    - #### andIfExists

          @SafeVarargs
          public final <C> DroolsBiCondition<A,B,PatternVar> andIfExists(Class<C> otherClass,
                                                                                      TriJoiner<A,B,C>... joiners)

    - #### andIfNotExists

          @SafeVarargs
          public final <C> DroolsBiCondition<A,B,PatternVar> andIfNotExists(Class<C> otherClass,
                                                                                         TriJoiner<A,B,C>... joiners)

    - #### bindTupleVariableOnFirstGrouping

          protected <InTuple> org.drools.model.PatternDSL.PatternDef<PatternVar> bindTupleVariableOnFirstGrouping(org.drools.model.PatternDSL.PatternDef<PatternVar> pattern,
                                                                                                                  org.drools.model.Variable<InTuple> tupleVariable)

      Specified by:
        `bindTupleVariableOnFirstGrouping` in class `DroolsCondition<PatternVar,DroolsBiRuleStructure<A,B,PatternVar>>`

    - #### andCollect

          public <NewA,__> DroolsUniCondition<NewA,NewA> andCollect(BiConstraintCollector<A,B,__,NewA> collector)

    - #### andGroup

          public <NewA> DroolsUniCondition<NewA,?> andGroup(BiFunction<A,B,NewA> groupKeyMapping)

    - #### andGroupWithCollect

          public <NewA,NewB> DroolsBiCondition<NewA,NewB,BiTuple<NewA,NewB>> andGroupWithCollect(BiFunction<A,B,NewA> groupKeyMapping,
                                                                                                 BiConstraintCollector<A,B,?,NewB> collector)

    - #### andGroupBi

          public <NewA,NewB> DroolsBiCondition<NewA,NewB,?> andGroupBi(BiFunction<A,B,NewA> groupKeyAMapping,
                                                                       BiFunction<A,B,NewB> groupKeyBMapping)

    - #### andGroupBiWithCollect

          public <NewA,NewB,NewC> DroolsTriCondition<NewA,NewB,NewC,TriTuple<NewA,NewB,NewC>> andGroupBiWithCollect(BiFunction<A,B,NewA> groupKeyAMapping,
                                                                                                                    BiFunction<A,B,NewB> groupKeyBMapping,
                                                                                                                    BiConstraintCollector<A,B,?,NewC> collector)

    - #### andGroupBiWithCollectBi

          public <NewA,NewB,NewC,NewD> DroolsQuadCondition<NewA,NewB,NewC,NewD,QuadTuple<NewA,NewB,NewC,NewD>> andGroupBiWithCollectBi(BiFunction<A,B,NewA> groupKeyAMapping,
                                                                                                                                       BiFunction<A,B,NewB> groupKeyBMapping,
                                                                                                                                       BiConstraintCollector<A,B,?,NewC> collectorC,
                                                                                                                                       BiConstraintCollector<A,B,?,NewD> collectorD)

    - #### completeWithScoring

          public List<org.drools.model.RuleItemBuilder<?>> completeWithScoring(org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal)

    - #### completeWithScoring

          public List<org.drools.model.RuleItemBuilder<?>> completeWithScoring(DroolsConstraint<?> constraint,
                                                                               org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal,
                                                                               ToIntBiFunction<A,B> matchWeighter)

    - #### completeWithScoring

          public List<org.drools.model.RuleItemBuilder<?>> completeWithScoring(DroolsConstraint<?> constraint,
                                                                               org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal,
                                                                               ToLongBiFunction<A,B> matchWeighter)

    - #### completeWithScoring

          public List<org.drools.model.RuleItemBuilder<?>> completeWithScoring(DroolsConstraint<?> constraint,
                                                                               org.drools.model.Global<? extends AbstractScoreHolder<?>> scoreHolderGlobal,
                                                                               BiFunction<A,B,BigDecimal> matchWeighter)

Copyright © 2006–2021 JBoss by Red Hat. All rights reserved.