X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fclamp%2Floop%2Fcomponents%2Fexternal%2FDcaeComponent.java;h=8fce5cafd8b6f3a75650cab9a79390ce98ad9e94;hb=72c6cdcaa3319e40a881c1f0d8a2b1f72fdf56dc;hp=acb7190f75ce7f5caa3fee92ef97858a6a509870;hpb=e0a8ab9bd315aecde32e0163c9d233ec29df9d51;p=clamp.git diff --git a/src/main/java/org/onap/clamp/loop/components/external/DcaeComponent.java b/src/main/java/org/onap/clamp/loop/components/external/DcaeComponent.java index acb7190f..8fce5caf 100644 --- a/src/main/java/org/onap/clamp/loop/components/external/DcaeComponent.java +++ b/src/main/java/org/onap/clamp/loop/components/external/DcaeComponent.java @@ -24,16 +24,17 @@ package org.onap.clamp.loop.components.external; import com.google.gson.JsonObject; + import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.UUID; + import org.apache.camel.Exchange; import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; - import org.onap.clamp.clds.model.dcae.DcaeInventoryResponse; import org.onap.clamp.clds.model.dcae.DcaeOperationStatusResponse; import org.onap.clamp.clds.util.JsonUtils; @@ -46,12 +47,15 @@ public class DcaeComponent extends ExternalComponent { private static final String DEPLOYMENT_PARAMETER = "dcaeDeployParameters"; private static final String DCAE_SERVICETYPE_ID = "serviceTypeId"; private static final String DCAE_INPUTS = "inputs"; + private static final String SINGLE_BLUEPRINT_POLICYID = "loop template blueprint"; + + private String name; public static final ExternalComponentState BLUEPRINT_DEPLOYED = new ExternalComponentState("BLUEPRINT_DEPLOYED", "The DCAE blueprint has been found in the DCAE inventory but not yet instancianted for this loop"); public static final ExternalComponentState PROCESSING_MICROSERVICE_INSTALLATION = new ExternalComponentState( "PROCESSING_MICROSERVICE_INSTALLATION", "Clamp has requested DCAE to install the microservices " - + "defined in the DCAE blueprint and it's currently processing the request"); + + "defined in the DCAE blueprint and it's currently processing the request"); public static final ExternalComponentState MICROSERVICE_INSTALLATION_FAILED = new ExternalComponentState( "MICROSERVICE_INSTALLATION_FAILED", "Clamp has requested DCAE to install the microservices defined in the DCAE blueprint and it failed"); @@ -60,7 +64,7 @@ public class DcaeComponent extends ExternalComponent { "Clamp has requested DCAE to install the DCAE blueprint and it has been installed successfully"); public static final ExternalComponentState PROCESSING_MICROSERVICE_UNINSTALLATION = new ExternalComponentState( "PROCESSING_MICROSERVICE_UNINSTALLATION", "Clamp has requested DCAE to uninstall the microservices " - + "defined in the DCAE blueprint and it's currently processing the request"); + + "defined in the DCAE blueprint and it's currently processing the request"); public static final ExternalComponentState MICROSERVICE_UNINSTALLATION_FAILED = new ExternalComponentState( "MICROSERVICE_UNINSTALLATION_FAILED", "Clamp has requested DCAE to uninstall the microservices defined in the DCAE blueprint and it failed"); @@ -72,16 +76,23 @@ public class DcaeComponent extends ExternalComponent { public DcaeComponent() { super(BLUEPRINT_DEPLOYED); + this.name = "DCAE"; + } + + public DcaeComponent(String name) { + super(BLUEPRINT_DEPLOYED); + this.name = "DCAE_" + name; } @Override public String getComponentName() { - return "DCAE"; + return name; } + /** * Convert the json response to a DcaeOperationStatusResponse. - * + * * @param responseBody The DCAE response Json paylaod * @return The dcae object provisioned */ @@ -92,6 +103,7 @@ public class DcaeComponent extends ExternalComponent { return null; } } + /** * Generate the deployment id, it's random. * @@ -120,9 +132,9 @@ public class DcaeComponent extends ExternalComponent { */ public static String getDeployPayload(Loop loop) { JsonObject globalProp = loop.getGlobalPropertiesJson(); - JsonObject deploymentProp = globalProp.getAsJsonObject(DEPLOYMENT_PARAMETER); + JsonObject deploymentProp = globalProp.getAsJsonObject(DEPLOYMENT_PARAMETER).getAsJsonObject(SINGLE_BLUEPRINT_POLICYID); - String serviceTypeId = loop.getDcaeBlueprintId(); + String serviceTypeId = loop.getLoopTemplate().getDcaeBlueprintId(); JsonObject rootObject = new JsonObject(); rootObject.addProperty(DCAE_SERVICETYPE_ID, serviceTypeId); @@ -135,15 +147,16 @@ public class DcaeComponent extends ExternalComponent { /** * Return the deploy payload for DCAE. * - * @param loop The loop object - * @param microServiceName The micro service name + * @param loop The loop object + * @param microServicePolicy The micro service policy * @return The payload used to send deploy closed loop request */ - public static String getDeployPayload(Loop loop, String microServiceName) { + public static String getDeployPayload(Loop loop, MicroServicePolicy microServicePolicy) { JsonObject globalProp = loop.getGlobalPropertiesJson(); - JsonObject deploymentProp = globalProp.getAsJsonObject(DEPLOYMENT_PARAMETER).getAsJsonObject(microServiceName); + JsonObject deploymentProp = + globalProp.getAsJsonObject(DEPLOYMENT_PARAMETER).getAsJsonObject(microServicePolicy.getName()); - String serviceTypeId = loop.getDcaeBlueprintId(); + String serviceTypeId = microServicePolicy.getDcaeBlueprintId(); JsonObject rootObject = new JsonObject(); rootObject.addProperty(DCAE_SERVICETYPE_ID, serviceTypeId); @@ -161,14 +174,14 @@ public class DcaeComponent extends ExternalComponent { */ public static String getUndeployPayload(Loop loop) { JsonObject rootObject = new JsonObject(); - rootObject.addProperty(DCAE_SERVICETYPE_ID, loop.getDcaeBlueprintId()); + rootObject.addProperty(DCAE_SERVICETYPE_ID, loop.getLoopTemplate().getDcaeBlueprintId()); return rootObject.toString(); } /** * Return the uninstallation payload for DCAE. * - * @param microServicePolicy The microServicePolicy object + * @param policy The microServicePolicy object * @return The payload in string (json) */ public static String getUndeployPayload(MicroServicePolicy policy) {