package me.zinch.validator; import jakarta.validation.ConstraintViolation; import jakarta.validation.ValidationException; import java.util.Set; /** * Represents the result of a validation process. * @param the type of object being validated */ public class ValidateResult { private final Set> violations; private final boolean isValid; public ValidateResult(Set> violations) { this.violations = violations; this.isValid = violations.isEmpty(); } public String getMessage() { return String.join("\n", violations.stream().map(ConstraintViolation::getMessage).toList()); } public boolean isValid() { return isValid; } public void throwIfNotValid() throws ValidationException { if (!isValid) throw new ValidationException(getMessage()); } }