Class DroolsAbstractQuadConstraintStream<Solution_,​A,​B,​C,​D>

    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> filter​(org.optaplanner.core.api.function.QuadPredicate<A,​B,​C,​D> predicate)  
      <ResultD_> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​ResultD_> flattenLast​(Function<D,​Iterable<ResultD_>> mapping)  
      protected org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​Collection<?>> getDefaultIndictedObjectsMapping()  
      protected org.optaplanner.core.api.function.PentaFunction<A,​B,​C,​D,​org.optaplanner.core.api.score.Score<?>,​org.optaplanner.core.api.score.stream.DefaultConstraintJustification> getDefaultJustificationMapping()  
      abstract QuadLeftHandSide<A,​B,​C,​D> getLeftHandSide()  
      <GroupKey_>
      org.optaplanner.core.api.score.stream.uni.UniConstraintStream<GroupKey_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping)  
      <GroupKey_,​ResultContainer_,​Result_>
      org.optaplanner.core.api.score.stream.bi.BiConstraintStream<GroupKey_,​Result_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> collector)  
      <GroupKey_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_>
      org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKey_,​ResultB_,​ResultC_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC)  
      <GroupKey_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_,​ResultContainerD_,​ResultD_>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKey_,​ResultB_,​ResultC_,​ResultD_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)  
      <GroupKeyA_,​GroupKeyB_>
      org.optaplanner.core.api.score.stream.bi.BiConstraintStream<GroupKeyA_,​GroupKeyB_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping)  
      <GroupKeyA_,​GroupKeyB_,​GroupKeyC_>
      org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,​GroupKeyB_,​GroupKeyC_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyC_> groupKeyCMapping)  
      <GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​GroupKeyD_>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​GroupKeyD_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyC_> groupKeyCMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyD_> groupKeyDMapping)  
      <GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​ResultContainerD_,​ResultD_>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​ResultD_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyC_> groupKeyCMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)  
      <GroupKeyA_,​GroupKeyB_,​ResultContainer_,​Result_>
      org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,​GroupKeyB_,​Result_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> collector)  
      <GroupKeyA_,​GroupKeyB_,​ResultContainerC_,​ResultC_,​ResultContainerD_,​ResultD_>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,​GroupKeyB_,​ResultC_,​ResultD_>
      groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)  
      <ResultContainer_,​Result_>
      org.optaplanner.core.api.score.stream.uni.UniConstraintStream<Result_>
      groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> collector)  
      <ResultContainerA_,​ResultA_,​ResultContainerB_,​ResultB_>
      org.optaplanner.core.api.score.stream.bi.BiConstraintStream<ResultA_,​ResultB_>
      groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerA_,​ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB)  
      <ResultContainerA_,​ResultA_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_>
      org.optaplanner.core.api.score.stream.tri.TriConstraintStream<ResultA_,​ResultB_,​ResultC_>
      groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerA_,​ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC)  
      <ResultContainerA_,​ResultA_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_,​ResultContainerD_,​ResultD_>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<ResultA_,​ResultB_,​ResultC_,​ResultD_>
      groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerA_,​ResultA_> collectorA, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC, org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)  
      <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifExists​(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)  
      <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifExistsIncludingNullVars​(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)  
      <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifNotExists​(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)  
      <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifNotExistsIncludingNullVars​(Class<E> otherClass, org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)  
      <Score_ extends org.optaplanner.core.api.score.Score<Score_>>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,​B,​C,​D,​Score_>
      innerImpact​(Score_ constraintWeight, org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​BigDecimal> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType)  
      <Score_ extends org.optaplanner.core.api.score.Score<Score_>>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,​B,​C,​D,​Score_>
      innerImpact​(Score_ constraintWeight, org.optaplanner.core.api.function.ToIntQuadFunction<A,​B,​C,​D> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType)  
      <Score_ extends org.optaplanner.core.api.score.Score<Score_>>
      org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,​B,​C,​D,​Score_>
      innerImpact​(Score_ constraintWeight, org.optaplanner.core.api.function.ToLongQuadFunction<A,​B,​C,​D> matchWeigher, org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType)  
      <ResultA_> org.optaplanner.core.api.score.stream.uni.UniConstraintStream<ResultA_> map​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​ResultA_> mapping)  
      • Methods inherited from class org.optaplanner.constraint.streams.common.AbstractConstraintStream

        buildConstraintWeightExtractor, buildConstraintWeightExtractor, getRetrievalSemantics
      • Methods inherited from interface org.optaplanner.core.api.score.stream.ConstraintStream

        getConstraintFactory
      • Methods 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, 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 Detail

      • DroolsAbstractQuadConstraintStream

        public DroolsAbstractQuadConstraintStream​(DroolsConstraintFactory<Solution_> constraintFactory,
                                                  org.optaplanner.constraint.streams.common.RetrievalSemantics retrievalSemantics)
    • Method Detail

      • filter

        public org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> filter​(org.optaplanner.core.api.function.QuadPredicate<A,​B,​C,​D> predicate)
        Specified by:
        filter in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • ifExists

        @SafeVarargs
        public final <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifExists​(Class<E> otherClass,
                                                                                                                             org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)
        Specified by:
        ifExists in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • ifExistsIncludingNullVars

        @SafeVarargs
        public final <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifExistsIncludingNullVars​(Class<E> otherClass,
                                                                                                                                              org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)
        Specified by:
        ifExistsIncludingNullVars in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • ifNotExists

        @SafeVarargs
        public final <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifNotExists​(Class<E> otherClass,
                                                                                                                                org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)
        Specified by:
        ifNotExists in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • ifNotExistsIncludingNullVars

        @SafeVarargs
        public final <E> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​D> ifNotExistsIncludingNullVars​(Class<E> otherClass,
                                                                                                                                                 org.optaplanner.core.api.score.stream.penta.PentaJoiner<A,​B,​C,​D,​E>... joiners)
        Specified by:
        ifNotExistsIncludingNullVars in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <ResultContainer_,​Result_> org.optaplanner.core.api.score.stream.uni.UniConstraintStream<Result_> groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> collector)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <ResultContainerA_,​ResultA_,​ResultContainerB_,​ResultB_> org.optaplanner.core.api.score.stream.bi.BiConstraintStream<ResultA_,​ResultB_> groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerA_,​ResultA_> collectorA,
                                                                                                                                                                                      org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <ResultContainerA_,​ResultA_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_> org.optaplanner.core.api.score.stream.tri.TriConstraintStream<ResultA_,​ResultB_,​ResultC_> groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerA_,​ResultA_> collectorA,
                                                                                                                                                                                                                                              org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB,
                                                                                                                                                                                                                                              org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <ResultContainerA_,​ResultA_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_,​ResultContainerD_,​ResultD_> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<ResultA_,​ResultB_,​ResultC_,​ResultD_> groupBy​(org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerA_,​ResultA_> collectorA,
                                                                                                                                                                                                                                                                                                      org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB,
                                                                                                                                                                                                                                                                                                      org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC,
                                                                                                                                                                                                                                                                                                      org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKey_> org.optaplanner.core.api.score.stream.uni.UniConstraintStream<GroupKey_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKey_,​ResultContainer_,​Result_> org.optaplanner.core.api.score.stream.bi.BiConstraintStream<GroupKey_,​Result_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping,
                                                                                                                                                             org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> collector)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKey_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_> org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKey_,​ResultB_,​ResultC_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping,
                                                                                                                                                                                                                        org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB,
                                                                                                                                                                                                                        org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKey_,​ResultContainerB_,​ResultB_,​ResultContainerC_,​ResultC_,​ResultContainerD_,​ResultD_> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKey_,​ResultB_,​ResultC_,​ResultD_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKey_> groupKeyMapping,
                                                                                                                                                                                                                                                                                org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerB_,​ResultB_> collectorB,
                                                                                                                                                                                                                                                                                org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC,
                                                                                                                                                                                                                                                                                org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKeyA_,​GroupKeyB_> org.optaplanner.core.api.score.stream.bi.BiConstraintStream<GroupKeyA_,​GroupKeyB_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping,
                                                                                                                                              org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKeyA_,​GroupKeyB_,​ResultContainer_,​Result_> org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,​GroupKeyB_,​Result_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping,
                                                                                                                                                                                                   org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping,
                                                                                                                                                                                                   org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> collector)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKeyA_,​GroupKeyB_,​ResultContainerC_,​ResultC_,​ResultContainerD_,​ResultD_> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,​GroupKeyB_,​ResultC_,​ResultD_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping,
                                                                                                                                                                                                                                                              org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping,
                                                                                                                                                                                                                                                              org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerC_,​ResultC_> collectorC,
                                                                                                                                                                                                                                                              org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKeyA_,​GroupKeyB_,​GroupKeyC_> org.optaplanner.core.api.score.stream.tri.TriConstraintStream<GroupKeyA_,​GroupKeyB_,​GroupKeyC_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping,
                                                                                                                                                                                  org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping,
                                                                                                                                                                                  org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyC_> groupKeyCMapping)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​ResultContainerD_,​ResultD_> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​ResultD_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping,
                                                                                                                                                                                                                                          org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping,
                                                                                                                                                                                                                                          org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyC_> groupKeyCMapping,
                                                                                                                                                                                                                                          org.optaplanner.core.api.score.stream.quad.QuadConstraintCollector<A,​B,​C,​D,​ResultContainerD_,​ResultD_> collectorD)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • groupBy

        public <GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​GroupKeyD_> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<GroupKeyA_,​GroupKeyB_,​GroupKeyC_,​GroupKeyD_> groupBy​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyA_> groupKeyAMapping,
                                                                                                                                                                                                                      org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyB_> groupKeyBMapping,
                                                                                                                                                                                                                      org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyC_> groupKeyCMapping,
                                                                                                                                                                                                                      org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​GroupKeyD_> groupKeyDMapping)
        Specified by:
        groupBy in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • map

        public <ResultA_> org.optaplanner.core.api.score.stream.uni.UniConstraintStream<ResultA_> map​(org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​ResultA_> mapping)
        Specified by:
        map in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • flattenLast

        public <ResultD_> org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<A,​B,​C,​ResultD_> flattenLast​(Function<D,​Iterable<ResultD_>> mapping)
        Specified by:
        flattenLast in interface org.optaplanner.core.api.score.stream.quad.QuadConstraintStream<Solution_,​A,​B,​C>
      • innerImpact

        public <Score_ extends org.optaplanner.core.api.score.Score<Score_>> org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,​B,​C,​D,​Score_> innerImpact​(Score_ constraintWeight,
                                                                                                                                                                                                  org.optaplanner.core.api.function.ToIntQuadFunction<A,​B,​C,​D> matchWeigher,
                                                                                                                                                                                                  org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType)
        Specified by:
        innerImpact in interface org.optaplanner.constraint.streams.common.quad.InnerQuadConstraintStream<Solution_,​A,​B,​C>
      • innerImpact

        public <Score_ extends org.optaplanner.core.api.score.Score<Score_>> org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,​B,​C,​D,​Score_> innerImpact​(Score_ constraintWeight,
                                                                                                                                                                                                  org.optaplanner.core.api.function.ToLongQuadFunction<A,​B,​C,​D> matchWeigher,
                                                                                                                                                                                                  org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType)
        Specified by:
        innerImpact in interface org.optaplanner.constraint.streams.common.quad.InnerQuadConstraintStream<Solution_,​A,​B,​C>
      • innerImpact

        public <Score_ extends org.optaplanner.core.api.score.Score<Score_>> org.optaplanner.core.api.score.stream.quad.QuadConstraintBuilder<A,​B,​C,​D,​Score_> innerImpact​(Score_ constraintWeight,
                                                                                                                                                                                                  org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​BigDecimal> matchWeigher,
                                                                                                                                                                                                  org.optaplanner.constraint.streams.common.ScoreImpactType scoreImpactType)
        Specified by:
        innerImpact in interface org.optaplanner.constraint.streams.common.quad.InnerQuadConstraintStream<Solution_,​A,​B,​C>
      • getDefaultJustificationMapping

        protected final org.optaplanner.core.api.function.PentaFunction<A,​B,​C,​D,​org.optaplanner.core.api.score.Score<?>,​org.optaplanner.core.api.score.stream.DefaultConstraintJustification> getDefaultJustificationMapping()
        Specified by:
        getDefaultJustificationMapping in class org.optaplanner.constraint.streams.common.AbstractConstraintStream<Solution_>
      • getDefaultIndictedObjectsMapping

        protected final org.optaplanner.core.api.function.QuadFunction<A,​B,​C,​D,​Collection<?>> getDefaultIndictedObjectsMapping()
        Specified by:
        getDefaultIndictedObjectsMapping in class org.optaplanner.constraint.streams.common.AbstractConstraintStream<Solution_>