package svanimpe.reminders.validation;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import static svanimpe.reminders.util.Utilities.*;
public class PasswordValidator implements ConstraintValidator<ValidPassword, String>
{
@Override
public void initialize(ValidPassword constraintAnnotation)
{
}
/*
* A valid password should contain between 8 and 255 characters. Leading or trailing whitespace
* is not allowed. The User class should have already removed this whitespace when setting the
* plain text password.
*/
@Override
public boolean isValid(String password, ConstraintValidatorContext context)
{
return password != null && password.equals(cleanUp(password)) && password.length() >= 8 && password.length() <= 255;
}
}