## Uses of Interface
org.optaplanner.core.api.score.stream.bi.BiConstraintCollector

- Packages that use BiConstraintCollector
  Package | Description
  --- | ---
  org.optaplanner.core.api.score.stream | The `ConstraintStream` API: a way to define constraints for `Score` calculation.
  org.optaplanner.core.api.score.stream.bi | The `ConstraintStream` API for bi-tuples.
  org.optaplanner.core.impl.score.stream.bavet.bi |
  org.optaplanner.core.impl.score.stream.bi |
  org.optaplanner.core.impl.score.stream.drools.bi |
  org.optaplanner.core.impl.score.stream.drools.quad |
  org.optaplanner.core.impl.score.stream.drools.tri |
  org.optaplanner.core.impl.score.stream.drools.uni |

- - ### Uses of BiConstraintCollector in org.optaplanner.core.api.score.stream

    Methods in org.optaplanner.core.api.score.stream that return BiConstraintCollector
    Modifier and Type | Method and Description
    --- | ---
    `static <A,B> BiConstraintCollector<A,B,?,Integer>` | ConstraintCollectors.`countBi()`
    `static <A,B> BiConstraintCollector<A,B,?,Integer>` | ConstraintCollectors.`countDistinct(BiFunction<A,B,?> groupValueMapping)`
    `static <A,B> BiConstraintCollector<A,B,?,Long>` | ConstraintCollectors.`countDistinctLong(BiFunction<A,B,?> groupValueMapping)`
    `static <A,B> BiConstraintCollector<A,B,?,Long>` | ConstraintCollectors.`countLongBi()`
    `static <A,B,Mapped extends Comparable<Mapped>> BiConstraintCollector<A,B,?,Mapped>` | ConstraintCollectors.`max(BiFunction<A,B,Mapped> groupValueMapping)` As defined by `ConstraintCollectors.max(Function)`.
    `static <A,B,Mapped> BiConstraintCollector<A,B,?,Mapped>` | ConstraintCollectors.`max(BiFunction<A,B,Mapped> groupValueMapping, Comparator<Mapped> comparator)` As defined by `ConstraintCollectors.max(Function)`, only with a custom `Comparator`.
    `static <A,B,Mapped extends Comparable<Mapped>> BiConstraintCollector<A,B,?,Mapped>` | ConstraintCollectors.`min(BiFunction<A,B,Mapped> groupValueMapping)` As defined by `ConstraintCollectors.min(Function)`.
    `static <A,B,Mapped> BiConstraintCollector<A,B,?,Mapped>` | ConstraintCollectors.`min(BiFunction<A,B,Mapped> groupValueMapping, Comparator<Mapped> comparator)` As defined by `ConstraintCollectors.min(Function)`, only with a custom `Comparator`.
    `static <A,B,Result> BiConstraintCollector<A,B,?,Result>` | ConstraintCollectors.`sum(BiFunction<? super A,? super B,Result> groupValueMapping, Result zero, BinaryOperator<Result> adder, BinaryOperator<Result> subtractor)`
    `static <A,B> BiConstraintCollector<A,B,?,Integer>` | ConstraintCollectors.`sum(ToIntBiFunction<? super A,? super B> groupValueMapping)`
    `static <A,B> BiConstraintCollector<A,B,?,BigDecimal>` | ConstraintCollectors.`sumBigDecimal(BiFunction<? super A,? super B,BigDecimal> groupValueMapping)`
    `static <A,B> BiConstraintCollector<A,B,?,BigInteger>` | ConstraintCollectors.`sumBigInteger(BiFunction<? super A,? super B,BigInteger> groupValueMapping)`
    `static <A,B> BiConstraintCollector<A,B,?,Duration>` | ConstraintCollectors.`sumDuration(BiFunction<? super A,? super B,Duration> groupValueMapping)`
    `static <A,B> BiConstraintCollector<A,B,?,Long>` | ConstraintCollectors.`sumLong(ToLongBiFunction<? super A,? super B> groupValueMapping)`
    `static <A,B> BiConstraintCollector<A,B,?,Period>` | ConstraintCollectors.`sumPeriod(BiFunction<? super A,? super B,Period> groupValueMapping)`
    `static <A,B,Mapped,Result extends Collection<Mapped>> BiConstraintCollector<A,B,?,Result>` | ConstraintCollectors.`toCollection(BiFunction<A,B,Mapped> groupValueMapping, IntFunction<Result> collectionFunction)`
    `static <A,B,Mapped> BiConstraintCollector<A,B,?,List<Mapped>>` | ConstraintCollectors.`toList(BiFunction<A,B,Mapped> groupValueMapping)` Creates constraint collector that returns `List` of the given element type.
    `static <A,B,Key,Value> BiConstraintCollector<A,B,?,Map<Key,Set<Value>>>` | ConstraintCollectors.`toMap(BiFunction<? super A,? super B,? extends Key> keyMapper, BiFunction<? super A,? super B,? extends Value> valueMapper)` As defined by `ConstraintCollectors.toMap(Function, Function)`.
    `static <A,B,Key,Value> BiConstraintCollector<A,B,?,Map<Key,Value>>` | ConstraintCollectors.`toMap(BiFunction<? super A,? super B,? extends Key> keyMapper, BiFunction<? super A,? super B,? extends Value> valueMapper, BinaryOperator<Value> mergeFunction)` As defined by `ConstraintCollectors.toMap(Function, Function, BinaryOperator)`.
    `static <A,B,Key,Value,ValueSet extends Set<Value>> BiConstraintCollector<A,B,?,Map<Key,ValueSet>>` | ConstraintCollectors.`toMap(BiFunction<? super A,? super B,? extends Key> keyMapper, BiFunction<? super A,? super B,? extends Value> valueMapper, IntFunction<ValueSet> valueSetFunction)` As defined by `ConstraintCollectors.toMap(Function, Function, IntFunction)`.
    `static <A,B,Mapped> BiConstraintCollector<A,B,?,Set<Mapped>>` | ConstraintCollectors.`toSet(BiFunction<A,B,Mapped> groupValueMapping)` As defined by `ConstraintCollectors.toSet(Function)`.
    `static <A,B,Key extends Comparable<Key>,Value> BiConstraintCollector<A,B,?,SortedMap<Key,Set<Value>>>` | ConstraintCollectors.`toSortedMap(BiFunction<? super A,? super B,? extends Key> keyMapper, BiFunction<? super A,? super B,? extends Value> valueMapper)` As defined by `ConstraintCollectors.toSortedMap(Function, Function)`.
    `static <A,B,Key extends Comparable<Key>,Value> BiConstraintCollector<A,B,?,SortedMap<Key,Value>>` | ConstraintCollectors.`toSortedMap(BiFunction<? super A,? super B,? extends Key> keyMapper, BiFunction<? super A,? super B,? extends Value> valueMapper, BinaryOperator<Value> mergeFunction)` As defined by `ConstraintCollectors.toSortedMap(Function, Function, BinaryOperator)`.
    `static <A,B,Key extends Comparable<Key>,Value,ValueSet extends Set<Value>> BiConstraintCollector<A,B,?,SortedMap<Key,ValueSet>>` | ConstraintCollectors.`toSortedMap(BiFunction<? super A,? super B,? extends Key> keyMapper, BiFunction<? super A,? super B,? extends Value> valueMapper, IntFunction<ValueSet> valueSetFunction)` As defined by `ConstraintCollectors.toSortedMap(Function, Function, IntFunction)`.
    `static <A,B,Mapped extends Comparable<Mapped>> BiConstraintCollector<A,B,?,SortedSet<Mapped>>` | ConstraintCollectors.`toSortedSet(BiFunction<A,B,Mapped> groupValueMapping)` As defined by `ConstraintCollectors.toSortedSet(Function)`.

  - ### Uses of BiConstraintCollector in org.optaplanner.core.api.score.stream.bi

    Methods in org.optaplanner.core.api.score.stream.bi with parameters of type BiConstraintCollector
    Modifier and Type | Method and Description
    --- | ---
    `<ResultContainer_,Result_> UniConstraintStream<Result_>` | BiConstraintStream.`groupBy(BiConstraintCollector<A,B,ResultContainer_,Result_> collector)` Runs all tuples of the stream through a given @`BiConstraintCollector` and converts them into a new `UniConstraintStream` which only has a single tuple, the result of applying `BiConstraintCollector`.
    `<GroupKey_,ResultContainer_,Result_> BiConstraintStream<GroupKey_,Result_>` | BiConstraintStream.`groupBy(BiFunction<A,B,GroupKey_> groupKeyMapping, BiConstraintCollector<A,B,ResultContainer_,Result_> collector)` Convert the `BiConstraintStream` to a different `BiConstraintStream`, consisting of unique tuples.
    `<GroupKeyA_,GroupKeyB_,ResultContainer_,Result_> TriConstraintStream<GroupKeyA_,GroupKeyB_,Result_>` | BiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainer_,Result_> collector)` Combines the semantics of `BiConstraintStream.groupBy(BiFunction, BiFunction)` and `BiConstraintStream.groupBy(BiConstraintCollector)`.
    `<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_> QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>` | BiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)` Combines the semantics of `BiConstraintStream.groupBy(BiFunction, BiFunction)` and `BiConstraintStream.groupBy(BiConstraintCollector)`.
    `<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_> QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>` | BiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)` Combines the semantics of `BiConstraintStream.groupBy(BiFunction, BiFunction)` and `BiConstraintStream.groupBy(BiConstraintCollector)`.

  - ### Uses of BiConstraintCollector in org.optaplanner.core.impl.score.stream.bavet.bi

    Methods in org.optaplanner.core.impl.score.stream.bavet.bi with parameters of type BiConstraintCollector
    Modifier and Type | Method and Description
    --- | ---
    `<ResultContainer_,Result_> UniConstraintStream<Result_>` | BavetAbstractBiConstraintStream.`groupBy(BiConstraintCollector<A,B,ResultContainer_,Result_> collector)`
    `<GroupKey_,ResultContainer_,Result_> BiConstraintStream<GroupKey_,Result_>` | BavetAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKey_> groupKeyMapping, BiConstraintCollector<A,B,ResultContainer_,Result_> collector)`
    `<GroupKeyA_,GroupKeyB_,ResultContainer_,Result_> TriConstraintStream<GroupKeyA_,GroupKeyB_,Result_>` | BavetAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainer_,Result_> collector)`
    `<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_> QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>` | BavetAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)`
    `<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_> QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>` | BavetAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)`

  - ### Uses of BiConstraintCollector in org.optaplanner.core.impl.score.stream.bi

    Classes in org.optaplanner.core.impl.score.stream.bi that implement BiConstraintCollector
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DefaultBiConstraintCollector<A,B,ResultContainer_,Result_>`

  - ### Uses of BiConstraintCollector in org.optaplanner.core.impl.score.stream.drools.bi

    Methods in org.optaplanner.core.impl.score.stream.drools.bi with parameters of type BiConstraintCollector
    Modifier and Type | Method and Description
    --- | ---
    `<NewA,__> DroolsUniCondition<NewA,NewA>` | DroolsBiCondition.`andCollect(BiConstraintCollector<A,B,__,NewA> collector)`
    `<NewA,NewB,NewC> DroolsTriCondition<NewA,NewB,NewC,TriTuple<NewA,NewB,NewC>>` | DroolsBiCondition.`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>>` | DroolsBiCondition.`andGroupBiWithCollectBi(BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,?,NewC> collectorC, BiConstraintCollector<A,B,?,NewD> collectorD)`
    `<NewA,NewB,NewC,NewD> DroolsQuadCondition<NewA,NewB,NewC,NewD,QuadTuple<NewA,NewB,NewC,NewD>>` | DroolsBiCondition.`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>>` | DroolsBiCondition.`andGroupWithCollect(BiFunction<A,B,NewA> groupKeyMapping, BiConstraintCollector<A,B,?,NewB> collector)`
    `<ResultContainer_,Result_> UniConstraintStream<Result_>` | DroolsAbstractBiConstraintStream.`groupBy(BiConstraintCollector<A,B,ResultContainer_,Result_> collector)`
    `<GroupKey_,__,Result_> BiConstraintStream<GroupKey_,Result_>` | DroolsAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKey_> groupKeyMapping, BiConstraintCollector<A,B,__,Result_> collector)`
    `<GroupKeyA_,GroupKeyB_,ResultContainer_,Result_> TriConstraintStream<GroupKeyA_,GroupKeyB_,Result_>` | DroolsAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainer_,Result_> collector)`
    `<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_> QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>` | DroolsAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)`
    `<GroupKeyA_,GroupKeyB_,ResultContainerC_,ResultC_,ResultContainerD_,ResultD_> QuadConstraintStream<GroupKeyA_,GroupKeyB_,ResultC_,ResultD_>` | DroolsAbstractBiConstraintStream.`groupBy(BiFunction<A,B,GroupKeyA_> groupKeyAMapping, BiFunction<A,B,GroupKeyB_> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC_,ResultC_> collectorC, BiConstraintCollector<A,B,ResultContainerD_,ResultD_> collectorD)`

    Constructors in org.optaplanner.core.impl.score.stream.drools.bi with parameters of type BiConstraintCollector
    Constructor and Description
    `DroolsBiGroupByInvoker(BiFunction<A,B,NewA> groupKeyMapping, BiConstraintCollector<A,B,?,NewB> collector, org.drools.model.Variable<A> aVariable, org.drools.model.Variable<B> bVariable)`
    `DroolsBiToQuadGroupByInvoker(BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,?,NewC> collectorC, BiConstraintCollector<A,B,?,NewD> collectorD, org.drools.model.Variable<A> aVariable, org.drools.model.Variable<B> bVariable)`
    `DroolsBiToQuadGroupByInvoker(BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,?,NewC> collectorC, BiConstraintCollector<A,B,?,NewD> collectorD, org.drools.model.Variable<A> aVariable, org.drools.model.Variable<B> bVariable)`
    `DroolsBiToTriGroupByInvoker(BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,?,NewC> collector, org.drools.model.Variable<A> aVariable, org.drools.model.Variable<B> bVariable)`
    `DroolsGroupingBiConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractBiConstraintStream<Solution_,A,B> parent, BiFunction<A,B,NewA> groupKeyMapping, BiConstraintCollector<A,B,__,NewB> collector)`

  - ### Uses of BiConstraintCollector in org.optaplanner.core.impl.score.stream.drools.quad

    Constructors in org.optaplanner.core.impl.score.stream.drools.quad with parameters of type BiConstraintCollector
    Constructor and Description
    `DroolsGroupingQuadConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractBiConstraintStream<Solution_,A,B> parent, BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC,NewC> collectorC, BiConstraintCollector<A,B,ResultContainerD,NewD> collectorD)`
    `DroolsGroupingQuadConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractBiConstraintStream<Solution_,A,B> parent, BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainerC,NewC> collectorC, BiConstraintCollector<A,B,ResultContainerD,NewD> collectorD)`

  - ### Uses of BiConstraintCollector in org.optaplanner.core.impl.score.stream.drools.tri

    Constructors in org.optaplanner.core.impl.score.stream.drools.tri with parameters of type BiConstraintCollector
    Constructor and Description
    `DroolsGroupingTriConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractBiConstraintStream<Solution_,A,B> parent, BiFunction<A,B,NewA> groupKeyAMapping, BiFunction<A,B,NewB> groupKeyBMapping, BiConstraintCollector<A,B,ResultContainer_,NewC> collector)`

  - ### Uses of BiConstraintCollector in org.optaplanner.core.impl.score.stream.drools.uni

    Constructors in org.optaplanner.core.impl.score.stream.drools.uni with parameters of type BiConstraintCollector
    Constructor and Description
    `DroolsGroupingUniConstraintStream(DroolsConstraintFactory<Solution_> constraintFactory, DroolsAbstractBiConstraintStream<Solution_,A,B> parent, BiConstraintCollector<A,B,ResultContainer_,NewA> collector)`

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