@Override public boolean isValid(List<String> list, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); boolean valid = true; for (int i = 0; i < list.size(); i++) { if ("X".equals(list.get(i))) { context.buildConstraintViolationWithTemplate(context.getDefaultConstraintMessageTemplate()).addBeanNode().inIterable().atIndex(i).addConstraintViolation(); valid = false; } } return valid; } }
@Override public boolean isValid(List<String> list, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); boolean valid = true; for (int i = 0; i < list.size(); i++) { if ("X".equals(list.get(i))) { context.buildConstraintViolationWithTemplate(context.getDefaultConstraintMessageTemplate()).addBeanNode().inIterable().atIndex(i).addConstraintViolation(); valid = false; } } return valid; } }
@Override public boolean isValid(List<PropertyConstraint> value, ConstraintValidatorContext context) { if(value == null) { return true; } Set<String> definedConstraints = Sets.newHashSet(); boolean isValid = true; for (int i = 0; i < value.size(); i++) { PropertyConstraint constraint = value.get(i); if (!definedConstraints.add(constraint.getClass().getName())) { context.buildConstraintViolationWithTemplate("CONSTRAINTS.VALIDATION.DUPLICATED_CONSTRAINT").addBeanNode().inIterable() .atIndex(i).addConstraintViolation(); isValid = false; } } return isValid; } }
.inIterable().atIndex( 42 ) .addConstraintViolation();
@Override public boolean isValid(PropertyDefinition value, ConstraintValidatorContext context) { if (value.getConstraints() == null) { return true; } IPropertyType<?> toscaType = ToscaTypes.fromYamlTypeName(value.getType()); if (toscaType == null) { return false; } boolean isValid = true; for (int i = 0; i < value.getConstraints().size(); i++) { PropertyConstraint constraint = value.getConstraints().get(i); try { constraint.initialize(toscaType); } catch (ConstraintValueDoNotMatchPropertyTypeException e) { log.info("Constraint definition error", e); context.buildConstraintViolationWithTemplate("CONSTRAINTS.VALIDATION.TYPE").addPropertyNode("constraints").addBeanNode().inIterable() .atIndex(i).addConstraintViolation(); isValid = false; } } return isValid; } }