override def isValid()

in validation/src/main/scala/com/twitter/finatra/validation/constraints/MinConstraintValidator.scala [21:37]


  override def isValid(
    obj: Any,
    constraintValidatorContext: ConstraintValidatorContext
  ): Boolean = obj match {
    case arrayValue: Array[_] => isValid(arrayValue.length, constraintValidatorContext)
    case mapValue: Map[_, _] => isValid(mapValue.size, constraintValidatorContext)
    case traversableValue: Iterable[_] =>
      isValid(traversableValue.size, constraintValidatorContext)
    case iterableWrapper: java.util.Collection[_] =>
      isValid(iterableWrapper.size(), constraintValidatorContext)
    case bigDecimalValue: BigDecimal => isValid(bigDecimalValue, constraintValidatorContext)
    case bigIntValue: BigInt => isValid(bigIntValue, constraintValidatorContext)
    case numberValue: Number => isValid(numberValue, constraintValidatorContext)
    case _ =>
      throw new UnexpectedTypeException(
        s"Class [${obj.getClass.getName}] is not supported by ${this.getClass.getName}")
  }