Package org.optaplanner.core.impl.score.stream.drools.tri

## Class DroolsTriGroupByAccumulator<A,​B,​C,​NewA,​NewB,​NewC>

- java.lang.Object
- - org.optaplanner.core.impl.score.stream.drools.common.DroolsAbstractGroupByAccumulator<TriTuple<A,​B,​C>>
  - - org.optaplanner.core.impl.score.stream.drools.tri.DroolsTriGroupByAccumulator<A,​B,​C,​NewA,​NewB,​NewC>

- All Implemented Interfaces:
    `org.drools.core.spi.Accumulator`, `org.drools.core.spi.Invoker`, `org.drools.core.spi.RuleComponent`

      public class DroolsTriGroupByAccumulator<A,​B,​C,​NewA,​NewB,​NewC>
      extends DroolsAbstractGroupByAccumulator<TriTuple<A,​B,​C>>

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.drools.core.spi.Accumulator

      `org.drools.core.spi.Accumulator.SafeAccumulator`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DroolsTriGroupByAccumulator​(TriFunction<A,​B,​C,​NewA> groupKeyAMapping, TriFunction<A,​B,​C,​NewB> groupKeyBMapping, TriConstraintCollector<A,​B,​C,​?,​NewC> collector, org.drools.model.Variable<A> aVariable, org.drools.model.Variable<B> bVariable, org.drools.model.Variable<C> cVariable)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected <X> TriTuple<A,​B,​C>` | `createInput​(Function<org.drools.model.Variable<X>,​X> valueFinder)` |
    `protected DroolsAbstractGroupBy<TriTuple<A,​B,​C>,​?>` | `newContext()` |

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

      `accumulate, createContext, createWorkingMemoryContext, getResult, getValue, init, materialize, supportsReverse, tryReverse`

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

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

- - ### Constructor Detail

    - #### DroolsTriGroupByAccumulator

          public DroolsTriGroupByAccumulator​(TriFunction<A,​B,​C,​NewA> groupKeyAMapping,
                                             TriFunction<A,​B,​C,​NewB> groupKeyBMapping,
                                             TriConstraintCollector<A,​B,​C,​?,​NewC> collector,
                                             org.drools.model.Variable<A> aVariable,
                                             org.drools.model.Variable<B> bVariable,
                                             org.drools.model.Variable<C> cVariable)

  - ### Method Detail

    - #### newContext

          protected DroolsAbstractGroupBy<TriTuple<A,​B,​C>,​?> newContext()

      Specified by:
        `newContext` in class `DroolsAbstractGroupByAccumulator<TriTuple<A,​B,​C>>`

    - #### createInput

          protected <X> TriTuple<A,​B,​C> createInput​(Function<org.drools.model.Variable<X>,​X> valueFinder)

      Specified by:
        `createInput` in class `DroolsAbstractGroupByAccumulator<TriTuple<A,​B,​C>>`