public class OnapCommandSchemaHttpLoader {
+ private static final String ATTRIBUTE = "Attribute '";
+
+ private OnapCommandSchemaHttpLoader() {
+ // to follow standards !
+ }
+
public static List<String> loadHttpSchema(OnapHttpCommand cmd, String schemaName, boolean includeDefault,
boolean validateSchema) throws OnapCommandException {
try {
Map<String, String> query = (Map<String, String>) map.get(key2);
cmd.getInput().setReqQueries(query);
+ break;
+ case OnapCommandHttpConstants.CONTEXT:
+ Map<String, Object> context = (Map<String, Object>) map.get(key2);
+
+ for (String key: context.keySet()) {
+ switch (key) {
+ case OnapCommandHttpConstants.CONTEXT_REMOVE_EMPTY_JSON_NODES:
+ Boolean flag = (Boolean) context.get(OnapCommandHttpConstants.CONTEXT_REMOVE_EMPTY_JSON_NODES);
+ cmd.getInput().getContext().put(OnapCommandHttpConstants.CONTEXT_REMOVE_EMPTY_JSON_NODES, flag.toString());
+ break;
+ }
+ }
+
+
break;
case OnapCommandHttpConstants.MULTIPART_ENTITY_NAME:
Object multipartEntityName = map.get(key2);
if (serviceMap.containsKey(secKey)) {
Object obj = serviceMap.get(secKey);
if (obj == null) {
- errorList.add("Attribute '" + secKey + "' under '" + OnapCommandHttpConstants.SERVICE + "' is empty");
+ errorList.add(ATTRIBUTE + secKey + "' under '" + OnapCommandHttpConstants.SERVICE + "' is empty");
} else {
String value = String.valueOf(obj);
if (!OnapCommandConfig.getCommaSeparatedList(validationMap.get(secKey)).contains(value)) {
- errorList.add("Attribute '" + secKey + "' contains invalid value. Valide values are "
+ errorList.add(ATTRIBUTE + secKey + "' contains invalid value. Valide values are "
+ OnapCommandConfig.getCommaSeparatedList(validationMap.get(key1))); //
}
}
String method = (String) requestMap.get(OnapCommandHttpConstants.METHOD);
if (method != null && !method.isEmpty()) {
if (!OnapCommandConfig.getCommaSeparatedList(OnapCommandHttpConstants.HTTP_METHODS).contains(method.toLowerCase())) {
- errorList.add("Attribute '" + OnapCommandHttpConstants.METHOD + "' under '" + OnapCommandHttpConstants.REQUEST + "' is invalid, correct types are "
+ errorList.add(ATTRIBUTE + OnapCommandHttpConstants.METHOD + "' under '" + OnapCommandHttpConstants.REQUEST + "' is invalid, correct types are "
+ OnapCommandConfig.getCommaSeparatedList(OnapCommandHttpConstants.HTTP_METHODS).toString());
}
} else {
}
String body = String.valueOf(bodyString);
- JSONObject obj = null;
- try {
- obj = new ObjectMapper().readValue(body, JSONObject.class);
- } catch (IOException e1) { // NOSONAR
- errorList.add(OnapCommandHttpConstants.HTTP_BODY_FAILED_PARSING);
- }
- if (obj == null || "".equals(obj.toString())) {
+
+ if (body == null || "".equals(body)) {
errorList.add(OnapCommandHttpConstants.HTTP_BODY_JSON_EMPTY);
+ } else {
+ try {
+ new ObjectMapper().readValue(body, JSONObject.class);
+ } catch (IOException e1) { // NOSONAR
+ errorList.add(OnapCommandHttpConstants.HTTP_BODY_FAILED_PARSING);
+ }
}
+
OnapCommandUtils.parseParameters(body, bodyParamNames);
return bodyParamNames;