in elitzur-core/src/main/scala/com/spotify/elitzur/validators/DynamicRecordValidator.scala [28:52]
override def validateRecord(a: PreValidation[Seq[Any]],
path: String = "",
outermostClassName: Option[String] = None,
config: ValidationRecordConfig = DefaultRecordConfig)
: PostValidation[Seq[Any]] = {
val ps = a.forceGet.toArray
val as = new Array[ValidatorAccessor[Any]](ps.length)
var i = 0
while (i < ps.length) {
val value = ps(i)
as.update(i, ValidatorAccessor(validators(i), value, labels(i))
.asInstanceOf[ValidatorAccessor[Any]])
i = i + 1
}
Validator.validationLoop(
as,
identity[Seq[Any]],
outermostClassName.getOrElse(
throw new Exception("A class name is required for Metrics Reporting")),
path,
config
)
}