Class RoundToPrecision

java.lang.Object
cdm.base.math.functions.RoundToPrecision
All Implemented Interfaces:
com.rosetta.model.lib.functions.RosettaFunction
Direct Known Subclasses:
RoundToPrecision.RoundToPrecisionDefault, RoundToPrecisionImpl

public abstract class RoundToPrecision extends Object implements com.rosetta.model.lib.functions.RosettaFunction
  • Field Details

    • conditionValidator

      @Inject protected com.rosetta.model.lib.functions.ConditionValidator conditionValidator
  • Constructor Details

    • RoundToPrecision

      public RoundToPrecision()
  • Method Details

    • evaluate

      public BigDecimal evaluate(BigDecimal value, Integer precision, RoundingDirectionEnum roundingMode, Boolean removeTrailingZeros)
      Parameters:
      value - The original (unrounded) number.
      precision - The number of decimal digits of precision.
      roundingMode - The method of rounding (up/down/nearest).
      removeTrailingZeros - Flag to specify whether to strip trailing zeros.
      Returns:
      roundedValue The value to the desired precision
    • doEvaluate

      protected abstract BigDecimal doEvaluate(BigDecimal value, Integer precision, RoundingDirectionEnum roundingMode, Boolean removeTrailingZeros)