/** * */ package org.javabuilders.handler.validation.validator; import org.javabuilders.BuildResult; import org.javabuilders.NamedObjectProperty; import org.javabuilders.handler.validation.ValidationMessage; import org.javabuilders.handler.validation.ValidationMessageList; /** * Min length validator * @author Jacek Furmankiewiczs */ public class MinLengthValidator extends AbstractValidator { private Integer minLength; /** * @param property * @param label * @param messageFormat * @param result */ public MinLengthValidator(NamedObjectProperty property, String label, String messageFormat, BuildResult result, Integer minLength) { super(property, label, messageFormat, result); this.minLength = minLength; } /* (non-Javadoc) * @see org.javabuilders.handler.validation.ICustomValidator#validate(java.lang.Object, org.javabuilders.handler.validation.ValidationMessageList) */ public void validate(Object value, ValidationMessageList list) { String sValue = getStringValue(value); if (sValue == null || sValue.length() < minLength) { //non-strings, just check for null list.add(new ValidationMessage(getProperty(),getMessage(getLabel(),minLength))); } } /** * @return the minLength */ public Integer getMinLength() { return minLength; } /** * @param minLength the minLength to set */ public void setMinLength(Integer minLength) { this.minLength = minLength; } }