/DealFinder/src/com/perscholas/dealfinder/validation/EmailValidator.java

https://github.com/dan31877/Programming-Projects · Java · 32 lines · 21 code · 7 blank · 4 comment · 2 complexity · 2295f842fcf7891ffc3b24dfd1f57d84 MD5 · raw file

  1. package com.perscholas.dealfinder.validation;
  2. import java.util.regex.Matcher;
  3. import java.util.regex.Pattern;
  4. import javax.validation.ConstraintValidator;
  5. import javax.validation.ConstraintValidatorContext;
  6. /**
  7. * Validator that implements EmailConstraint and ensures Email addresses are entered in the correct format
  8. *
  9. */
  10. public class EmailValidator implements ConstraintValidator<EmailConstraint, String> {
  11. public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$",
  12. Pattern.CASE_INSENSITIVE);
  13. public static boolean validate(String emailStr) {
  14. Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr);
  15. return matcher.find();
  16. }
  17. @Override
  18. public void initialize(EmailConstraint ec) {
  19. }
  20. @Override
  21. public boolean isValid(String str, ConstraintValidatorContext ctxt) {
  22. return (validate(str) &&
  23. (str.length() > 4) && (str.length()<24));
  24. }
  25. }