public Boolean getBoolean(String key, ObjectNode node, boolean required, String location, ParseResult result) { Boolean value = null; JsonNode v = node.get(key); if (node == null || v == null) { if (required) { result.missing(location, key); result.invalid(); } } else { if(v.getNodeType().equals(JsonNodeType.BOOLEAN)) { value = v.asBoolean(); } else if(v.getNodeType().equals(JsonNodeType.STRING)) { String stringValue = v.textValue(); return Boolean.parseBoolean(stringValue); } } return value; }
public BigDecimal getBigDecimal(String key, ObjectNode node, boolean required, String location, ParseResult result) { BigDecimal value = null; JsonNode v = node.get(key); if (node == null || v == null) { if (required) { result.missing(location, key); result.invalid(); } } else if(v.getNodeType().equals(JsonNodeType.NUMBER)) { value = new BigDecimal(v.asText()); } else if(!v.isValueNode()) { result.invalidType(location, key, "double", node); } return value; }
public String getString(String key, ObjectNode node, boolean required, String location, ParseResult result, Set<String> uniqueValues) { String value = null; JsonNode v = node.get(key); if (node == null || v == null) { if (required) { result.missing(location, key); result.invalid(); } } else if(!v.isValueNode()) { result.invalidType(location, key, "string", node); } else { value = v.asText(); if (uniqueValues != null && !uniqueValues.add(value)) { result.unique(location, "operationId"); result.invalid(); } } return value; }
result.invalid(); return null;
public ObjectNode getObject(String key, ObjectNode node, boolean required, String location, ParseResult result) { JsonNode value = node.get(key); ObjectNode on = null; if(value == null) { if(required) { result.missing(location, key); result.invalid(); } } else if(!value.getNodeType().equals(JsonNodeType.OBJECT)) { result.invalidType(location, key, "object", value); if(required) { result.invalid(); } } else { on = (ObjectNode) value; } return on; }
public ArrayNode getArray(String key, ObjectNode node, boolean required, String location, ParseResult result) { JsonNode value = node.get(key); ArrayNode an = null; if(value == null) { if(required) { result.missing(location, key); result.invalid(); } } else if(!value.getNodeType().equals(JsonNodeType.ARRAY)) { result.invalidType(location, key, "array", value); } else { an = (ArrayNode) value; } return an; }
public Integer getInteger(String key, ObjectNode node, boolean required, String location, ParseResult result) { Integer value = null; JsonNode v = node.get(key); if (node == null || v == null) { if (required) { result.missing(location, key); result.invalid(); } } else if(v.getNodeType().equals(JsonNodeType.NUMBER)) { value = v.intValue(); } else if(!v.isValueNode()) { result.invalidType(location, key, "integer", node); } return value; }
public Number getNumber(String key, ObjectNode node, boolean required, String location, ParseResult result) { Number value = null; JsonNode v = node.get(key); if (v == null) { if (required) { result.missing(location, key); result.invalid(); } } else if(v.getNodeType().equals(JsonNodeType.NUMBER)) { value = v.numberValue(); } else if(!v.isValueNode()) { result.invalidType(location, key, "number", node); } return value; }