diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/org/onap/clamp/clds/tosca/update/execution/cds/ToscaMetadataCdsProcess.java | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/src/main/java/org/onap/clamp/clds/tosca/update/execution/cds/ToscaMetadataCdsProcess.java b/src/main/java/org/onap/clamp/clds/tosca/update/execution/cds/ToscaMetadataCdsProcess.java index b1c88903..b81e46bf 100644 --- a/src/main/java/org/onap/clamp/clds/tosca/update/execution/cds/ToscaMetadataCdsProcess.java +++ b/src/main/java/org/onap/clamp/clds/tosca/update/execution/cds/ToscaMetadataCdsProcess.java @@ -110,19 +110,40 @@ public class ToscaMetadataCdsProcess extends ToscaMetadataProcess { } } } - addToJsonArray(childObject, "enum", schemaAnyOf); + addToJsonArray(childObject, "anyOf", schemaAnyOf); } private static JsonObject createPayloadProperty(JsonObject workFlow, JsonObject controllerProperties) { JsonObject payloadResult = new JsonObject(); - payloadResult.addProperty("artifact_name", controllerProperties.get("sdnc_model_name").getAsString()); - payloadResult.addProperty("artifact_version", controllerProperties.get("sdnc_model_version").getAsString()); - payloadResult.addProperty("mode", "async"); - payloadResult.add("data", workFlow.getAsJsonObject("inputs")); + payloadResult.add("artifact_name", + createAnyOfJsonProperty("artifact_name", controllerProperties.get("sdnc_model_name").getAsString())); + payloadResult.add("artifact_version", + createAnyOfJsonProperty("artifact_version", + controllerProperties.get("sdnc_model_version").getAsString())); + payloadResult.add("mode", createAnyOfJsonProperty("mode", "async")); + + payloadResult.add("data", createAnyOfJsonObject("data", workFlow.getAsJsonObject("inputs"))); return payloadResult; } + private static JsonObject createAnyOfJsonProperty(String name, String defaultValue) { + JsonObject result = new JsonObject(); + result.addProperty("title", name); + result.addProperty("type", "string"); + result.addProperty("default", defaultValue); + result.addProperty("readOnly", "True"); + return result; + } + + private static JsonObject createAnyOfJsonObject(String name, JsonObject allProperties) { + JsonObject result = new JsonObject(); + result.addProperty("title", name); + result.addProperty("type", "object"); + result.add("properties", allProperties); + return result; + } + private static void addToJsonArray(JsonObject childObject, String section, JsonArray value) { if (childObject.getAsJsonArray(section) != null) { childObject.getAsJsonArray(section).addAll(value); |