import org.apache.camel.CamelContext;\r
import org.apache.camel.Exchange;\r
import org.apache.camel.builder.ExchangeBuilder;\r
+import org.onap.clamp.clds.exception.cds.CdsParametersException;\r
import org.onap.clamp.clds.model.cds.CdsBpWorkFlowListResponse;\r
import org.onap.clamp.clds.util.JsonUtils;\r
import org.onap.clamp.clds.util.LoggingUtils;\r
return null;\r
}\r
\r
- private JsonObject parseCdsResponse(String response) {\r
+ protected JsonObject parseCdsResponse(String response) {\r
JsonObject root = JsonParser.parseString(response).getAsJsonObject();\r
JsonObject inputs = root.getAsJsonObject("workFlowData").getAsJsonObject("inputs");\r
JsonObject dataTypes = root.getAsJsonObject("dataTypes");\r
String type = inputProperty.get("type").getAsString();\r
if (isComplexType(type, dataTypes)) {\r
inputObject.add(key, handleComplexType(type, dataTypes));\r
+ } else if (type.equalsIgnoreCase("list")) {\r
+ inputObject.add(key, handleListType(key, inputProperty,\r
+ dataTypes));\r
} else {\r
inputObject.add(key, entry.getValue());\r
}\r
return inputObject;\r
}\r
\r
+ private JsonObject handleListType(String propertyName,\r
+ JsonObject inputProperty,\r
+ JsonObject dataTypes) {\r
+ if (inputProperty.get("entry_schema") != null) {\r
+ String type = inputProperty.get("entry_schema").getAsJsonObject().get(\r
+ "type").getAsString();\r
+ if (dataTypes.get(type) != null) {\r
+ JsonObject jsonObject = new JsonObject();\r
+ jsonObject.addProperty("type", "list");\r
+ jsonObject.add("properties", handleComplexType(type, dataTypes));\r
+ return jsonObject;\r
+ } else {\r
+ return inputProperty;\r
+ }\r
+ }\r
+ throw new CdsParametersException("Entry schema is null for " + propertyName);\r
+ }\r
+\r
private JsonObject handleComplexType(String key, JsonObject dataTypes) {\r
JsonObject properties = dataTypes.get(key).getAsJsonObject().get("properties").getAsJsonObject();\r
return getInputProperties(properties, dataTypes);\r