@Override public String explainInvalid() { final StringBuilder sb = new StringBuilder(); sb.append("One of following is invalid: "); for (final Validator validator : validators) { if (sb.length() > 0) { sb.append(" OR "); } sb.append(validator.explainValid()); } return sb.toString(); }
@Override public ValidationResult validate(final Map<String, String> properties) { final DefaultValidationResult result = new DefaultValidationResult(); for (final Validator validator : validators) { final ValidationResult validationResult = validator.validate(properties); if (!validationResult.isValid()) { result.add(validationResult.violations()); } } if (result.isValid()) { return ValidationResult.VALID; } return result; }