@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; } }
.addConstraintViolation(); .addConstraintViolation(); .inIterable() .addBeanNode() .addConstraintViolation(); .inIterable().atIndex( 84 ) .addBeanNode() .addConstraintViolation(); .inIterable().atKey( "AnotherKey" ) .addBeanNode() .addConstraintViolation(); .inIterable() .addConstraintViolation(); .inIterable().atIndex( 42 ) .addConstraintViolation(); .inIterable().atKey( "Key" ) .addConstraintViolation();
if (CCSecurity.class.getName().equals(config.getFilterName())) { if (config.getExtension() == null) { context.buildConstraintViolationWithTemplate("CCSecurity extension value can't be null").addPropertyNode("extension").addBeanNode().inIterable().addConstraintViolation(); return false; context.buildConstraintViolationWithTemplate("CCSecurity extension value must be integer").addPropertyNode("extension").addBeanNode().inIterable().addConstraintViolation(); return false; }); if (isPositive) { context.buildConstraintViolationWithTemplate("CCSecurity extension value must be positive").addPropertyNode("extension").addBeanNode().inIterable().addConstraintViolation(); return false;
}); if (match1) { context.buildConstraintViolationWithTemplate("Redirect item pattern is illegal").addPropertyNode("items").addBeanNode().inIterable().addConstraintViolation(); return false; }); if (match2) { context.buildConstraintViolationWithTemplate("Redirect host must be http or https").addPropertyNode("items").addBeanNode().inIterable().addConstraintViolation(); return false; }); if (match3) { context.buildConstraintViolationWithTemplate("Redirect type must be 301 or 302").addPropertyNode("items").addBeanNode().inIterable().addConstraintViolation(); return false;
@Override public boolean isValid(String value, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addPropertyNode( "myNode1" ) .addPropertyNode( "myNode2" ) .inContainer( Map.class, 1 ) .inIterable() .atKey( "key" ) .addBeanNode() .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addPropertyNode( "myNode3" ) .inContainer( List.class, 0 ) .inIterable() .atIndex( 3 ) .addBeanNode() .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addPropertyNode( "myNode4" ) .inContainer( Optional.class, 0 ) .addPropertyNode( "myNode5" ) .addConstraintViolation(); return false; } }
@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; } }
@Override public boolean isValid(java.lang.Object[] value, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addParameterNode( 0 ) .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addParameterNode( 0 ) .addBeanNode() .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addParameterNode( 0 ) .addPropertyNode( "myNode1" ) .inIterable().atIndex( 23 ) .addBeanNode() .addConstraintViolation(); return false; } }
@Override public boolean isValid(RewriteConfigDto config, ConstraintValidatorContext context) { boolean match1 = config.getItems().parallelStream() .anyMatch(item -> { String[] parts = item.split(" +"); if (parts.length != 2) return true; else return false; }); if (match1) { context.buildConstraintViolationWithTemplate("Rewrite item pattern is illegal").addPropertyNode("items").addBeanNode().inIterable().addConstraintViolation(); return false; } return true; } }
@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; } }
@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; } }