protected YamlDocumentValidator(Class<?> documentClass) { this(documentClass, new NodeRuleFactory()); }
public void addRulesFor(Class<?> pojoClass) { nodeRuleFactory.addRulesTo(pojoClass, this); }
private DefaultTupleRule<Node, MappingNode> buildDocumentRule() { return nodeRuleFactory.createDocumentRule(documentClass); }
if (scalar != null) tupleRule = createScalarRule(declaredField, scalar); tupleHandler = createHandler(scalar.handler(), scalar.alias(), ScalarNode.class); required = scalar.required(); tupleRule = createMappingRule(declaredField, mapping); tupleHandler = createHandler(mapping.handler(), mapping.alias(), MappingNode.class); required = mapping.required(); if (tupleRule instanceof MapTupleRule) ((MapTupleRule) tupleRule).setInnerTupleHandler(createHandler(mapping.innerHandler(), "", null)); tupleRule = createSequenceRule(declaredField, sequence); tupleHandler = createHandler(sequence.handler(), sequence.alias(), SequenceNode.class); required = sequence.required();
public void addRulesTo(Class<?> pojoClass, TupleRule<?, ?> parent) { Map<String, TupleRule<?, ?>> innerBuilders = pojoRulesCache.get(pojoClass); if (innerBuilders != null) { innerBuilders = copyRules(innerBuilders); } else { innerBuilders = processPojoAnnotations(pojoClass); pojoRulesCache.put(pojoClass, new HashMap<String, TupleRule<?, ?>>(innerBuilders)); } for (TupleRule tupleRule : innerBuilders.values()) { tupleRule.setParentTupleRule(parent); } parent.setNestedRules(innerBuilders); }
private TupleRule<?, ?> createInstanceOfTupleRule(Class<? extends TupleRule> rule, String fieldName, Type valueType) { TupleRule tupleRule = createInstanceOf(rule); tupleRule.setName(fieldName); tupleRule.setValueType(valueType); tupleRule.setNodeRuleFactory(this); return tupleRule; } }
private TupleRule<?, ?> createSequenceRule(Field declaredField, Sequence sequence) { TupleRule<?, ?> tupleRule = null; if (List.class.isAssignableFrom(declaredField.getType())) { Type type = declaredField.getGenericType(); if (type instanceof ParameterizedType) { ParameterizedType pType = (ParameterizedType) type; Type itemType = pType.getActualTypeArguments()[0]; if (sequence.rule() != TupleRule.class) { tupleRule = createInstanceOfTupleRule(sequence.rule(), declaredField.getName(), itemType); } else { tupleRule = new SequenceTupleRule(declaredField.getName(), itemType); } } } else { throw new RuntimeException("Only List can be sequence. Error on field " + declaredField.getName()); } return tupleRule; }
if (scalar != null) tupleRule = createScalarRule(declaredField, scalar); tupleHandler = createHandler(scalar.handler(), scalar.alias(), ScalarNode.class); required = scalar.required(); tupleRule = createMappingRule(declaredField, mapping); tupleHandler = createHandler(mapping.handler(), mapping.alias(), MappingNode.class); required = mapping.required(); if (tupleRule instanceof MapTupleRule) ((MapTupleRule) tupleRule).setInnerTupleHandler(createHandler(mapping.innerHandler(), "", null)); tupleRule = createSequenceRule(declaredField, sequence); tupleHandler = createHandler(sequence.handler(), sequence.alias(), SequenceNode.class); required = sequence.required();
public void addRulesTo(Class<?> pojoClass, TupleRule<?, ?> parent) { Map<String, TupleRule<?, ?>> innerBuilders = pojoRulesCache.get(pojoClass); if (innerBuilders != null) { innerBuilders = copyRules(innerBuilders); } else { innerBuilders = processPojoAnnotations(pojoClass); pojoRulesCache.put(pojoClass, new HashMap<String, TupleRule<?, ?>>(innerBuilders)); } for (TupleRule tupleRule : innerBuilders.values()) { tupleRule.setParentTupleRule(parent); } parent.setNestedRules(innerBuilders); }
private TupleRule<?, ?> createInstanceOfTupleRule(Class<? extends TupleRule> rule, String fieldName, Type valueType) { TupleRule tupleRule = createInstanceOf(rule); tupleRule.setName(fieldName); tupleRule.setValueType(valueType); tupleRule.setNodeRuleFactory(this); return tupleRule; } }
private TupleRule<?, ?> createSequenceRule(Field declaredField, Sequence sequence) { TupleRule<?, ?> tupleRule = null; if (List.class.isAssignableFrom(declaredField.getType())) { Type type = declaredField.getGenericType(); if (type instanceof ParameterizedType) { ParameterizedType pType = (ParameterizedType) type; Type itemType = pType.getActualTypeArguments()[0]; if (sequence.rule() != TupleRule.class) { tupleRule = createInstanceOfTupleRule(sequence.rule(), declaredField.getName(), itemType); } else { tupleRule = new SequenceTupleRule(declaredField.getName(), itemType); } } } else { throw new RuntimeException("Only List can be sequence. Error on field " + declaredField.getName()); } return tupleRule; }
if (mapping.rule() != TupleRule.class) tupleRule = createInstanceOf(mapping.rule());
protected YamlDocumentValidator(Class<?> documentClass) { this(documentClass, new NodeRuleFactory()); }
private TupleRule<?, ?> createScalarRule(Field declaredField, Scalar scalar) { TupleRule<?, ?> tupleRule; if (scalar.rule() != TupleRule.class) { tupleRule = createInstanceOfTupleRule(scalar.rule(), declaredField.getName(), declaredField.getType()); } else { if (ReflectionUtils.isPojo(declaredField.getType())) { tupleRule = new PojoTupleRule(declaredField.getName(), declaredField.getType()); } else { tupleRule = new SimpleRule(declaredField.getName(), declaredField.getType()); } } return tupleRule; }
public void addRulesFor(Class<?> pojoClass) { nodeRuleFactory.addRulesTo(pojoClass, this); }
private DefaultTupleRule<Node, MappingNode> buildDocumentRule() { return nodeRuleFactory.createDocumentRule(documentClass); }
if (mapping.rule() != TupleRule.class) tupleRule = createInstanceOf(mapping.rule());
public static RamlValidationService createDefault(ResourceLoader loader, TagResolver... tagResolvers) { return createDefault(loader, new NodeRuleFactory(), tagResolvers); }
private TupleRule<?, ?> createScalarRule(Field declaredField, Scalar scalar) { TupleRule<?, ?> tupleRule; if (scalar.rule() != TupleRule.class) { tupleRule = createInstanceOfTupleRule(scalar.rule(), declaredField.getName(), declaredField.getType()); } else { if (ReflectionUtils.isPojo(declaredField.getType())) { tupleRule = new PojoTupleRule(declaredField.getName(), declaredField.getType()); } else { tupleRule = new SimpleRule(declaredField.getName(), declaredField.getType()); } } return tupleRule; }
public static RamlValidationService createDefault(ResourceLoader loader, TagResolver... tagResolvers) { return createDefault(loader, new NodeRuleFactory(), tagResolvers); }