package com.softwaremill.common.cdi.validation;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import java.util.regex.Pattern;
/**
* Created by amorfis on Dec 3, 2010 1:34:27 PM
*/
public class NoSpecialCharsValidator implements ConstraintValidator<NoSpecialChars, String> {
Pattern regex;
public void initialize(NoSpecialChars constraint) {
String charsAllowed = constraint.charsAllowed();
regex = Pattern.compile("^[A-Za-z0-9" + charsAllowed + "]*$");
}
public boolean isValid(String value, ConstraintValidatorContext context) {
if (value == null) return true;
return regex.matcher(value).matches();
}
}