Class BendableBigDecimalScoreHolderImpl

java.lang.Object
org.optaplanner.constraint.drl.holder.AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
org.optaplanner.constraint.drl.holder.BendableBigDecimalScoreHolderImpl
All Implemented Interfaces:
org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder, org.optaplanner.core.api.score.holder.ScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>

public final class BendableBigDecimalScoreHolderImpl extends AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore> implements org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
See Also:
  • BendableBigDecimalScore
  • Field Details

  • Constructor Details

    • BendableBigDecimalScoreHolderImpl

      public BendableBigDecimalScoreHolderImpl(boolean constraintMatchEnabled, int hardLevelsSize, int softLevelsSize)
  • Method Details

    • getHardLevelsSize

      public int getHardLevelsSize()
      Specified by:
      getHardLevelsSize in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • getHardScore

      public BigDecimal getHardScore(int hardLevel)
    • getSoftLevelsSize

      public int getSoftLevelsSize()
      Specified by:
      getSoftLevelsSize in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • getSoftScore

      public BigDecimal getSoftScore(int softLevel)
    • configureConstraintWeight

      public void configureConstraintWeight(org.kie.api.definition.rule.Rule rule, org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore constraintWeight)
      Overrides:
      configureConstraintWeight in class AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
    • penalize

      public void penalize(org.kie.api.runtime.rule.RuleContext kcontext)
      Specified by:
      penalize in interface org.optaplanner.core.api.score.holder.ScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
    • penalize

      public void penalize(org.kie.api.runtime.rule.RuleContext kcontext, BigDecimal weightMultiplier)
      Specified by:
      penalize in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • penalize

      public void penalize(org.kie.api.runtime.rule.RuleContext kcontext, BigDecimal[] hardWeightsMultiplier, BigDecimal[] softWeightsMultiplier)
      Specified by:
      penalize in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • reward

      public void reward(org.kie.api.runtime.rule.RuleContext kcontext)
      Specified by:
      reward in interface org.optaplanner.core.api.score.holder.ScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
    • reward

      public void reward(org.kie.api.runtime.rule.RuleContext kcontext, BigDecimal weightMultiplier)
      Specified by:
      reward in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • reward

      public void reward(org.kie.api.runtime.rule.RuleContext kcontext, BigDecimal[] hardWeightsMultiplier, BigDecimal[] softWeightsMultiplier)
      Specified by:
      reward in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • impactScore

      public void impactScore(org.kie.api.runtime.rule.RuleContext kcontext)
      Description copied from class: AbstractScoreHolder
      For internal use only, use penalize() or reward() instead.
      Overrides:
      impactScore in class AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
      Parameters:
      kcontext - never null
    • impactScore

      public void impactScore(org.kie.api.runtime.rule.RuleContext kcontext, int weightMultiplier)
      Description copied from class: AbstractScoreHolder
      For internal use only, use penalize() or reward() instead.
      Specified by:
      impactScore in class AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
      Parameters:
      kcontext - never null
      weightMultiplier - any
    • impactScore

      public void impactScore(org.kie.api.runtime.rule.RuleContext kcontext, long weightMultiplier)
      Description copied from class: AbstractScoreHolder
      For internal use only, use penalize() or reward() instead.
      Specified by:
      impactScore in class AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
      Parameters:
      kcontext - never null
      weightMultiplier - any
    • impactScore

      public void impactScore(org.kie.api.runtime.rule.RuleContext kcontext, BigDecimal weightMultiplier)
      Description copied from class: AbstractScoreHolder
      For internal use only, use penalize() or reward() instead.
      Specified by:
      impactScore in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
      Specified by:
      impactScore in class AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>
      Parameters:
      kcontext - never null
      weightMultiplier - any
    • addHardConstraintMatch

      public void addHardConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext, int hardLevel, BigDecimal weight)
      Specified by:
      addHardConstraintMatch in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • addSoftConstraintMatch

      public void addSoftConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext, int softLevel, BigDecimal weight)
      Specified by:
      addSoftConstraintMatch in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • addMultiConstraintMatch

      public void addMultiConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext, BigDecimal[] hardWeights, BigDecimal[] softWeights)
      Specified by:
      addMultiConstraintMatch in interface org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScoreHolder
    • extractScore

      public org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore extractScore(int initScore)
      Specified by:
      extractScore in class AbstractScoreHolder<org.optaplanner.core.api.score.buildin.bendablebigdecimal.BendableBigDecimalScore>