public Validator.Result validate(String value) { String[] fields = value.split(","); ArrayList<String> badFields = new ArrayList<String>(); Collection<String> allowableFields = linkSortFields.get(); for (String f : fields) { String field = f.trim(); if (!allowableFields.contains(field)) { badFields.add(field); } } if (badFields.isEmpty()) { return new Success(value); } else { // TODO i18n String csv = StringUtils.createCommaSeperatedString(allowableFields); return new Failure("Only the following fields are allowed: " + csv); } }
@Override public Result validate(String value) { final Set<String> options = enumerator.getEnumeration(); if (options.contains(value)) { return new Success(value); } else { String csv = StringUtils.createCommaSeperatedString(options); return new Failure("Only the following values are allowed: " + csv); } }
String mesg = "The following fields are invalid: " + StringUtils.createCommaSeperatedString(badFields); return new Failure(mesg, TextUtils.htmlEncode(mesg));