public class UserValidator implements Validator<User> {
@Override
public void validate(User user, ValidationErrors errors) {
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "name", "name.required");
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "password", "password.required");
ValidationUtils.rejectIfNotMatchingPattern(errors, "email", ".+@.+\\..+", "email.invalid");
}
}
public class AgeValidator implements Rule<User> {
@Override
public void validate(User user, ValidationErrors errors) {
if (user.getAge() < 18) {
errors.add("age", "age.invalid");
}
}
}
public class UserValidator implements Validator<User> {
@Override
public void validate(User user, ValidationErrors errors) {
new AgeValidator().validate(user, errors);
}
}