Improve coverage flow/controller/node #3
[appc.git] / appc-config / appc-flow-controller / provider / src / main / java / org / onap / appc / flow / controller / node / JsonValidator.java
diff --git a/appc-config/appc-flow-controller/provider/src/main/java/org/onap/appc/flow/controller/node/JsonValidator.java b/appc-config/appc-flow-controller/provider/src/main/java/org/onap/appc/flow/controller/node/JsonValidator.java
new file mode 100644 (file)
index 0000000..78d5305
--- /dev/null
@@ -0,0 +1,29 @@
+package org.onap.appc.flow.controller.node;
+
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import java.io.IOException;
+import org.apache.commons.lang3.StringUtils;
+
+class JsonValidator {
+
+  private static final EELFLogger log = EELFManager.getInstance().getLogger(JsonValidator.class);
+
+  static JsonNode validate(String json) throws IOException {
+    if (StringUtils.isBlank(json)) {
+      return null;
+    }
+    JsonNode output = null;
+    try {
+      ObjectMapper objectMapper = new ObjectMapper();
+      output = objectMapper.readTree(json);
+    } catch (JsonProcessingException e) {
+      log.warn("Response received from interface is not a valid JSON block" + json, e);
+    }
+    return output;
+  }
+
+}