package br.com.caelum.stella.bean.validation.logic; import javax.validation.ConstraintValidator; import javax.validation.ConstraintValidatorContext; import br.com.caelum.stella.bean.validation.TituloEleitoral; import br.com.caelum.stella.validation.TituloEleitoralValidator; /** * Valida a cadeia gerada através do método {@linkplain #toString()} para * verificar se ela está de acordo com o padrão de Título Eleitoral. * * @author Leonardo Bessa */ public class StellaTituloEleitoralValidator implements ConstraintValidator<TituloEleitoral, String> { private TituloEleitoralValidator stellaValidator; public void initialize(TituloEleitoral tituloEleitoral) { AnnotationMessageProducer messageProducer = new AnnotationMessageProducer( tituloEleitoral); stellaValidator = new TituloEleitoralValidator(messageProducer); } public boolean isValid(String value, ConstraintValidatorContext context) { if (value != null) { if (value.trim().length() == 0) { return true; } else { return stellaValidator.invalidMessagesFor(value).isEmpty(); } } else { return true; } } }