summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java8
-rw-r--r--bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java2
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVfModuleInfra.groovy21
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoDeleteResourcesV1.groovy1
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/aai/AAICreateResources.java14
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVfModuleInfra.bpmn118
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn14
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/test/java/org/openecomp/mso/bpmn/infrastructure/CreateVfModuleInfraTest.java5
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/test/resources/__files/AAI/AAI_genericVnfGet.json9
-rw-r--r--docs/SO_R1_Interface.rst2
10 files changed, 135 insertions, 59 deletions
diff --git a/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java b/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java
index d6e249d6c1..d76fbc2133 100644
--- a/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java
+++ b/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java
@@ -120,6 +120,8 @@ public class VfcManager {
segInput.getNsOperationKey().getOperationId(),
segInput.getNsOperationKey().getNodeTemplateUUID());
nsOperInfo.setStatus(RequestsDbConstant.Status.PROCESSING);
+ nsOperInfo.setProgress("40");
+ nsOperInfo.setStatusDescription("NS is created");
(RequestsDatabase.getInstance()).updateResOperStatus(nsOperInfo);
if (!HttpCode.isSucess(createRsp.getStatus())) {
@@ -191,6 +193,8 @@ public class VfcManager {
// Step4: update service segment operation status
nsOperInfo.setStatus(RequestsDbConstant.Status.FINISHED);
nsOperInfo.setErrorCode(String.valueOf(deleteRsp.getStatus()));
+ nsOperInfo.setProgress("100");
+ nsOperInfo.setStatusDescription("VFC resource deletion finished");
(RequestsDatabase.getInstance()).updateResOperStatus(nsOperInfo);
LOGGER.info("update segment operaton status for delete -> end");
@@ -256,6 +260,8 @@ public class VfcManager {
// Step 3: update segment operation job id
LOGGER.info("update resource operation status job id -> begin");
nsOperInfo.setJobId(jobId);
+ nsOperInfo.setProgress("100");
+ nsOperInfo.setStatusDescription("NS initiation completed.");
(RequestsDatabase.getInstance()).updateResOperStatus(nsOperInfo);
LOGGER.info("update segment operation job id -> end");
@@ -322,6 +328,8 @@ public class VfcManager {
LOGGER.info("terminate ns -> end");
LOGGER.info("update segment job id -> begin");
+ nsOperInfo.setProgress("60");
+ nsOperInfo.setStatusDescription("NS is termination completed");
nsOperInfo.setJobId(jobId);
(RequestsDatabase.getInstance()).updateResOperStatus(nsOperInfo);
LOGGER.info("update segment job id -> end");
diff --git a/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java b/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java
index c88800273c..bee476526c 100644
--- a/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java
+++ b/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java
@@ -133,7 +133,7 @@ public class ResourceRequestBuilder {
}
SdcToscaParserFactory toscaParser = SdcToscaParserFactory.getInstance();
- ISdcCsarHelper iSdcCsarHelper = toscaParser.getSdcCsarHelper(csarpath);
+ ISdcCsarHelper iSdcCsarHelper = toscaParser.getSdcCsarHelper(csarpath, false);
List<Input> serInput = iSdcCsarHelper.getServiceInputs();
Optional<NodeTemplate> nodeTemplateOpt = iSdcCsarHelper.getServiceNodeTemplates().stream()
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVfModuleInfra.groovy b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVfModuleInfra.groovy
index 3f0b8d11f1..797086b125 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVfModuleInfra.groovy
+++ b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVfModuleInfra.groovy
@@ -35,6 +35,8 @@ import org.openecomp.mso.bpmn.common.scripts.VidUtils;
import org.openecomp.mso.bpmn.core.RollbackData
import org.openecomp.mso.bpmn.core.WorkflowException
import org.openecomp.mso.bpmn.core.json.JsonUtils
+import org.openecomp.mso.bpmn.infrastructure.aai.AAICreateResources;
+import org.onap.aai.domain.yang.v12.GenericVnf;
public class CreateVfModuleInfra extends AbstractServiceTaskProcessor {
@@ -287,6 +289,25 @@ public class CreateVfModuleInfra extends AbstractServiceTaskProcessor {
exceptionUtil.buildAndThrowWorkflowException(execution, 1002, 'Error in sendResponse(): ' + e.getMessage())
}
}
+
+ /**
+ * Query AAI for vnf orchestration status to determine if health check and config scaling should be run
+ */
+ public void queryAAIForVnfOrchestrationStatus(DelegateExecution execution) {
+ def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+ def vnfId = execution.getVariable("CVFMI_vnfId")
+ execution.setVariable("runHealthCheck", false);
+ execution.setVariable("runConfigScaleOut", false);
+ AAICreateResources aaiCreateResources = new AAICreateResources();
+ Optional<GenericVnf> vnf = aaiCreateResources.getVnfInstance(vnfId);
+ if(vnf.isPresent()){
+ def vnfOrchestrationStatus = vnf.get().getOrchestrationStatus();
+ if("active".equalsIgnoreCase(vnfOrchestrationStatus)){
+ execution.setVariable("runHealthCheck", true);
+ execution.setVariable("runConfigScaleOut", true);
+ }
+ }
+ }
/**
*
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoDeleteResourcesV1.groovy b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoDeleteResourcesV1.groovy
index 8e05f8d3b8..1a36a4ea90 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoDeleteResourcesV1.groovy
+++ b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoDeleteResourcesV1.groovy
@@ -244,6 +244,7 @@ public class DoDeleteResourcesV1 extends AbstractServiceTaskProcessor {
resourceInput.setResourceInstanceName(currentResource.getResourceInstanceName())
resourceInput.setResourceInstancenUuid(currentResource.getResourceId())
resourceInput.setOperationId(execution.getVariable("operationId"))
+ resourceInput.setOperationType(execution.getVariable("operationType"))
String globalSubscriberId = execution.getVariable("globalSubscriberId")
resourceInput.setGlobalSubscriberId(globalSubscriberId)
resourceInput.setResourceModelInfo(currentResource.getModelInfo());
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/aai/AAICreateResources.java b/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/aai/AAICreateResources.java
index 93ba0ae5a4..3d05f76b03 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/aai/AAICreateResources.java
+++ b/bpmn/MSOInfrastructureBPMN/src/main/java/org/openecomp/mso/bpmn/infrastructure/aai/AAICreateResources.java
@@ -24,8 +24,10 @@ import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
+import org.onap.aai.domain.yang.v12.GenericVnf;
import org.openecomp.mso.client.aai.AAIObjectType;
import org.openecomp.mso.client.aai.AAIResourcesClient;
+import org.openecomp.mso.client.aai.entities.AAIResultWrapper;
import org.openecomp.mso.client.aai.entities.uri.AAIResourceUri;
import org.openecomp.mso.client.aai.entities.uri.AAIUriFactory;
@@ -81,4 +83,16 @@ public class AAICreateResources {
aaiRC.createIfNotExists(serviceInstanceURI, Optional.empty());
}
+ public Optional<GenericVnf> getVnfInstance(String vnfId){
+ try{
+ AAIResourceUri vnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId);
+ AAIResourcesClient aaiRC = new AAIResourcesClient();
+ AAIResultWrapper aaiResponse = aaiRC.get(vnfURI);
+ Optional<GenericVnf> vnf = aaiResponse.asBean(GenericVnf.class);
+ return vnf;
+ } catch (Exception ex){
+ return Optional.empty();
+ }
+ }
+
}
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVfModuleInfra.bpmn b/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVfModuleInfra.bpmn
index 841dec96bd..f882094851 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVfModuleInfra.bpmn
+++ b/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVfModuleInfra.bpmn
@@ -46,8 +46,8 @@
<bpmn2:scriptTask id="SendResponse" name="Send Response" scriptFormat="groovy">
<bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_0e2ta6w</bpmn2:outgoing>
- <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def createVfModule = new CreateVfModuleInfra()
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def createVfModule = new CreateVfModuleInfra()
createVfModule.sendResponse(execution)]]></bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1" name="To FinishLine">
@@ -63,8 +63,8 @@ createVfModule.sendResponse(execution)]]></bpmn2:script>
<bpmn2:scriptTask id="PrepareUpdateInfraRequest" name="Prepare Update Infra Request" scriptFormat="groovy">
<bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>
- <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def createVfModule = new CreateVfModuleInfra()
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def createVfModule = new CreateVfModuleInfra()
createVfModule.prepareUpdateInfraRequest(execution)]]></bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:serviceTask id="ServiceTask_1" name="Update Infra Request">
@@ -94,8 +94,8 @@ createVfModule.prepareUpdateInfraRequest(execution)]]></bpmn2:script>
<bpmn2:incoming>SequenceFlow_0td7d9m</bpmn2:incoming>
<bpmn2:incoming>SequenceFlow_0u8zesf</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>
- <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def createVfModule = new CreateVfModuleInfra()
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def createVfModule = new CreateVfModuleInfra()
createVfModule.postProcessResponse(execution)]]></bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="PrepareMSOCompletionHandler" targetRef="MSOCompletionHandler" />
@@ -147,8 +147,8 @@ createVfModule.postProcessResponse(execution)]]></bpmn2:script>
<bpmn2:scriptTask id="PrepareFalloutHandler" name="Prepare Fallout Handler" scriptFormat="groovy">
<bpmn2:incoming>SequenceFlow_018p5wf</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>
- <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def cvfm = new CreateVfModuleInfra()
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def cvfm = new CreateVfModuleInfra()
cvfm.falloutHandlerPrep(execution, 'CVFMI_FalloutHandlerRequest')]]></bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="PrepareFalloutHandler" targetRef="FalloutHandler" />
@@ -157,8 +157,8 @@ cvfm.falloutHandlerPrep(execution, 'CVFMI_FalloutHandlerRequest')]]></bpmn2:scri
<bpmn2:scriptTask id="SendErrorResponse" name="Send Error Response" scriptFormat="groovy">
<bpmn2:incoming>SequenceFlow_0wsgnab</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_018p5wf</bpmn2:outgoing>
- <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def createVfModule = new CreateVfModuleInfra()
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def createVfModule = new CreateVfModuleInfra()
createVfModule.sendErrorResponse(execution)]]></bpmn2:script>
</bpmn2:scriptTask>
</bpmn2:subProcess>
@@ -185,8 +185,8 @@ createVfModule.sendErrorResponse(execution)]]></bpmn2:script>
<bpmn2:scriptTask id="PreProcessRequest" name="Pre-Process Request" scriptFormat="groovy">
<bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
- <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def createVfModule = new CreateVfModuleInfra()
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def createVfModule = new CreateVfModuleInfra()
createVfModule.preProcessRequest(execution)]]></bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="PreProcessRequest" targetRef="SendResponse" />
@@ -194,8 +194,8 @@ createVfModule.preProcessRequest(execution)]]></bpmn2:script>
<bpmn2:scriptTask id="ProcessError" name="Process Error" scriptFormat="groovy">
<bpmn2:incoming>SequenceFlow_1qvgrvq</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_1jqizzo</bpmn2:outgoing>
- <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
-ExceptionUtil exceptionUtil = new ExceptionUtil()
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
+ExceptionUtil exceptionUtil = new ExceptionUtil()
exceptionUtil.processJavaException(execution)]]></bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:endEvent id="EndEvent_0100eju">
@@ -225,7 +225,7 @@ exceptionUtil.processJavaException(execution)]]></bpmn2:script>
<bpmn2:incoming>SequenceFlow_1xggje5</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_07llpjo</bpmn2:outgoing>
</bpmn2:callActivity>
- <bpmn2:sequenceFlow id="SequenceFlow_0e2ta6w" sourceRef="SendResponse" targetRef="ExclusiveGateway_1qozral" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0e2ta6w" sourceRef="SendResponse" targetRef="Task_1o3z68c" />
<bpmn2:exclusiveGateway id="ExclusiveGateway_09h60ub" name="Error on HealthCheck?" default="SequenceFlow_1vx081s">
<bpmn2:incoming>SequenceFlow_07llpjo</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_1vx081s</bpmn2:outgoing>
@@ -274,12 +274,12 @@ exceptionUtil.processJavaException(execution)]]></bpmn2:script>
<bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[execution.getVariable("errorConfigScaleOutCode") != "0"]]></bpmn2:conditionExpression>
</bpmn2:sequenceFlow>
<bpmn2:exclusiveGateway id="ExclusiveGateway_1qozral" name="Do HealthCheck?" default="SequenceFlow_1y7d5qk">
- <bpmn2:incoming>SequenceFlow_0e2ta6w</bpmn2:incoming>
+ <bpmn2:incoming>SequenceFlow_1b7348f</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_1xggje5</bpmn2:outgoing>
<bpmn2:outgoing>SequenceFlow_1y7d5qk</bpmn2:outgoing>
</bpmn2:exclusiveGateway>
<bpmn2:sequenceFlow id="SequenceFlow_1xggje5" name="yes" sourceRef="ExclusiveGateway_1qozral" targetRef="CallActivity_0i3men0">
- <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA["VNF Orchestration Status" == "Active or Activated"]]></bpmn2:conditionExpression>
+ <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[execution.getVariable("runHealthCheck")]]></bpmn2:conditionExpression>
</bpmn2:sequenceFlow>
<bpmn2:sequenceFlow id="SequenceFlow_1y7d5qk" name="no" sourceRef="ExclusiveGateway_1qozral" targetRef="DoCreateVfModuleSubprocess" />
<bpmn2:exclusiveGateway id="ExclusiveGateway_0c8x2mq" name="Do ConfigScaleOut?" default="SequenceFlow_0u8zesf">
@@ -288,9 +288,17 @@ exceptionUtil.processJavaException(execution)]]></bpmn2:script>
<bpmn2:outgoing>SequenceFlow_0u8zesf</bpmn2:outgoing>
</bpmn2:exclusiveGateway>
<bpmn2:sequenceFlow id="SequenceFlow_020dbkp" name="yes" sourceRef="ExclusiveGateway_0c8x2mq" targetRef="CallActivity_17ukiqm">
- <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA["VNF Orchestration Status" == "Active or Activated"]]></bpmn2:conditionExpression>
+ <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression" language="groovy"><![CDATA[execution.getVariable("runConfigScaleOut")]]></bpmn2:conditionExpression>
</bpmn2:sequenceFlow>
<bpmn2:sequenceFlow id="SequenceFlow_0u8zesf" name="no" sourceRef="ExclusiveGateway_0c8x2mq" targetRef="PrepareMSOCompletionHandler" />
+ <bpmn2:sequenceFlow id="SequenceFlow_1b7348f" sourceRef="Task_1o3z68c" targetRef="ExclusiveGateway_1qozral" />
+ <bpmn2:scriptTask id="Task_1o3z68c" name="Query AAI For Orchestration Status" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_0e2ta6w</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_1b7348f</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def createVfModule = new CreateVfModuleInfra()
+createVfModule.queryAAIForVnfOrchestrationStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
</bpmn2:process>
<bpmn2:error id="Error_1" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
<bpmn2:error id="Error_2" name="REST Fault" errorCode="RESTFault" />
@@ -323,19 +331,19 @@ exceptionUtil.processJavaException(execution)]]></bpmn2:script>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="_BPMNShape_ScriptTask_178" bpmnElement="DoCreateVfModuleSubprocess">
- <dc:Bounds x="597" y="-6" width="145" height="80" />
+ <dc:Bounds x="762" y="-6" width="145" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_47" bpmnElement="IntermediateThrowEvent_1">
- <dc:Bounds x="812" y="16" width="36" height="36" />
+ <dc:Bounds x="977" y="16" width="36" height="36" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="796" y="57" width="67" height="12" />
+ <dc:Bounds x="963" y="57" width="64" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_178" targetElement="_BPMNShape_IntermediateThrowEvent_47">
- <di:waypoint xsi:type="dc:Point" x="742" y="34" />
- <di:waypoint xsi:type="dc:Point" x="812" y="34" />
+ <di:waypoint xsi:type="dc:Point" x="907" y="34" />
+ <di:waypoint xsi:type="dc:Point" x="977" y="34" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="732" y="19" width="90" height="0" />
+ <dc:Bounds x="897" y="19" width="90" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_32" bpmnElement="IntermediateCatchEvent_1">
@@ -529,48 +537,48 @@ exceptionUtil.processJavaException(execution)]]></bpmn2:script>
<dc:Bounds x="296" y="698" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="CallActivity_0i3men0_di" bpmnElement="CallActivity_0i3men0">
- <dc:Bounds x="432" y="-145" width="145" height="80" />
+ <dc:Bounds x="597" y="-145" width="145" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_0e2ta6w_di" bpmnElement="SequenceFlow_0e2ta6w">
<di:waypoint xsi:type="dc:Point" x="409" y="34" />
- <di:waypoint xsi:type="dc:Point" x="480" y="34" />
+ <di:waypoint xsi:type="dc:Point" x="460" y="34" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="399.5" y="19" width="90" height="0" />
+ <dc:Bounds x="389.5" y="19" width="90" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="ExclusiveGateway_09h60ub_di" bpmnElement="ExclusiveGateway_09h60ub" isMarkerVisible="true">
- <dc:Bounds x="645" y="-130" width="50" height="50" />
+ <dc:Bounds x="810" y="-130" width="50" height="50" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="632" y="-162" width="75" height="24" />
+ <dc:Bounds x="800" y="-162" width="69" height="24" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_1vx081s_di" bpmnElement="SequenceFlow_1vx081s">
- <di:waypoint xsi:type="dc:Point" x="670" y="-80" />
- <di:waypoint xsi:type="dc:Point" x="670" y="-38" />
- <di:waypoint xsi:type="dc:Point" x="670" y="-38" />
- <di:waypoint xsi:type="dc:Point" x="670" y="-6" />
+ <di:waypoint xsi:type="dc:Point" x="835" y="-80" />
+ <di:waypoint xsi:type="dc:Point" x="835" y="-38" />
+ <di:waypoint xsi:type="dc:Point" x="835" y="-38" />
+ <di:waypoint xsi:type="dc:Point" x="835" y="-6" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="674.9351851851853" y="-69.97752808988761" width="15" height="12" />
+ <dc:Bounds x="841" y="-70" width="12" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="SequenceFlow_07llpjo_di" bpmnElement="SequenceFlow_07llpjo">
- <di:waypoint xsi:type="dc:Point" x="577" y="-105" />
- <di:waypoint xsi:type="dc:Point" x="645" y="-105" />
+ <di:waypoint xsi:type="dc:Point" x="742" y="-105" />
+ <di:waypoint xsi:type="dc:Point" x="810" y="-105" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="566" y="-120" width="90" height="0" />
+ <dc:Bounds x="731" y="-120" width="90" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="EndEvent_0n6bb71_di" bpmnElement="EndEvent_0n6bb71">
- <dc:Bounds x="760" y="-123" width="36" height="36" />
+ <dc:Bounds x="925" y="-123" width="36" height="36" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="733" y="-82" width="90" height="0" />
+ <dc:Bounds x="898" y="-82" width="90" height="0" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_0nszq2o_di" bpmnElement="SequenceFlow_0nszq2o">
- <di:waypoint xsi:type="dc:Point" x="695" y="-105" />
- <di:waypoint xsi:type="dc:Point" x="760" y="-105" />
+ <di:waypoint xsi:type="dc:Point" x="860" y="-105" />
+ <di:waypoint xsi:type="dc:Point" x="925" y="-105" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="700.9862881434168" y="-100.62310488133339" width="20" height="12" />
+ <dc:Bounds x="867" y="-101" width="18" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="CallActivity_17ukiqm_di" bpmnElement="CallActivity_17ukiqm">
@@ -617,23 +625,23 @@ exceptionUtil.processJavaException(execution)]]></bpmn2:script>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="ExclusiveGateway_1qozral_di" bpmnElement="ExclusiveGateway_1qozral" isMarkerVisible="true">
- <dc:Bounds x="479.5474525474525" y="9" width="50" height="50" />
+ <dc:Bounds x="645" y="9" width="50" height="50" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="463" y="66" width="86" height="12" />
+ <dc:Bounds x="628" y="66" width="86" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_1xggje5_di" bpmnElement="SequenceFlow_1xggje5">
- <di:waypoint xsi:type="dc:Point" x="505" y="9" />
- <di:waypoint xsi:type="dc:Point" x="505" y="-65" />
+ <di:waypoint xsi:type="dc:Point" x="670" y="9" />
+ <di:waypoint xsi:type="dc:Point" x="670" y="-65" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="512" y="-26" width="20" height="12" />
+ <dc:Bounds x="678" y="-26" width="18" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="SequenceFlow_1y7d5qk_di" bpmnElement="SequenceFlow_1y7d5qk">
- <di:waypoint xsi:type="dc:Point" x="530" y="34" />
- <di:waypoint xsi:type="dc:Point" x="597" y="34" />
+ <di:waypoint xsi:type="dc:Point" x="695" y="34" />
+ <di:waypoint xsi:type="dc:Point" x="762" y="34" />
<bpmndi:BPMNLabel>
- <dc:Bounds x="546" y="37" width="15" height="12" />
+ <dc:Bounds x="713" y="37" width="12" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="ExclusiveGateway_0c8x2mq_di" bpmnElement="ExclusiveGateway_0c8x2mq" isMarkerVisible="true">
@@ -656,6 +664,16 @@ exceptionUtil.processJavaException(execution)]]></bpmn2:script>
<dc:Bounds x="585" y="372" width="15" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_1b7348f_di" bpmnElement="SequenceFlow_1b7348f">
+ <di:waypoint xsi:type="dc:Point" x="560" y="34" />
+ <di:waypoint xsi:type="dc:Point" x="645" y="34" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="602.5" y="13" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_19vqej7_di" bpmnElement="Task_1o3z68c">
+ <dc:Bounds x="460" y="-6" width="100" height="80" />
+ </bpmndi:BPMNShape>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn2:definitions>
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn b/bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn
index 4d9bbe98da..78eabb99de 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn
+++ b/bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.10.0">
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.3">
<bpmn:process id="DoDeleteE2EServiceInstance" name="All Resources Deleted" isExecutable="true">
<bpmn:startEvent id="StartEvent_0212h2r" name="Start Flow">
<bpmn:outgoing>SequenceFlow_0vz7cd9</bpmn:outgoing>
@@ -119,11 +119,11 @@ ddsi.preInitResourcesOperStatus(execution)]]></bpmn:script>
<bpmn:incoming>SequenceFlow_0ha8ix9</bpmn:incoming>
<bpmn:linkEventDefinition name="StartDeleteResource" />
</bpmn:intermediateThrowEvent>
- <bpmn:intermediateCatchEvent id="StartEvent_09zdoq6" name="Start Delete Resources">
+ <bpmn:intermediateCatchEvent id="startDeleteResources" name="Start Delete Resources">
<bpmn:outgoing>SequenceFlow_1961633</bpmn:outgoing>
<bpmn:linkEventDefinition name="StartDeleteResource" />
</bpmn:intermediateCatchEvent>
- <bpmn:sequenceFlow id="SequenceFlow_1961633" sourceRef="StartEvent_09zdoq6" targetRef="ScriptTask_146jt8v" />
+ <bpmn:sequenceFlow id="SequenceFlow_1961633" sourceRef="startDeleteResources" targetRef="ScriptTask_146jt8v" />
<bpmn:scriptTask id="Task_1ldvug1" name="Prepare Decompose Service" scriptFormat="groovy">
<bpmn:incoming>SequenceFlow_1q2mqnm</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0fo5vw5</bpmn:outgoing>
@@ -172,11 +172,11 @@ dcsi.postDecomposeService(execution)]]></bpmn:script>
<bpmn:outgoing>SequenceFlow_1cevtpy</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:sequenceFlow id="SequenceFlow_1cevtpy" sourceRef="Task_1f5dlsv" targetRef="CallActivity_06izbke" />
- <bpmn:intermediateCatchEvent id="StartEvent_1irom2x" name="Decompose Service">
+ <bpmn:intermediateCatchEvent id="DecomposeService" name="Decompose Service">
<bpmn:outgoing>SequenceFlow_1q2mqnm</bpmn:outgoing>
<bpmn:linkEventDefinition name="DecomposeService" />
</bpmn:intermediateCatchEvent>
- <bpmn:sequenceFlow id="SequenceFlow_1q2mqnm" sourceRef="StartEvent_1irom2x" targetRef="Task_1ldvug1" />
+ <bpmn:sequenceFlow id="SequenceFlow_1q2mqnm" sourceRef="DecomposeService" targetRef="Task_1ldvug1" />
<bpmn:intermediateThrowEvent id="StartEvent_1qh5a34" name="Go to Decompse Service">
<bpmn:incoming>SequenceFlow_0vi0sv6</bpmn:incoming>
<bpmn:linkEventDefinition name="DecomposeService" />
@@ -340,7 +340,7 @@ dcsi.postDecomposeService(execution)]]></bpmn:script>
<dc:Bounds x="233" y="220" width="64" height="24" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
- <bpmndi:BPMNShape id="IntermediateCatchEvent_1jcfnjr_di" bpmnElement="StartEvent_09zdoq6">
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_1jcfnjr_di" bpmnElement="startDeleteResources">
<dc:Bounds x="-537" y="472" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="-549" y="512" width="60" height="24" />
@@ -372,7 +372,7 @@ dcsi.postDecomposeService(execution)]]></bpmn:script>
<dc:Bounds x="134" y="469" width="90" height="12" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
- <bpmndi:BPMNShape id="IntermediateCatchEvent_0s6bb2d_di" bpmnElement="StartEvent_1irom2x">
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_0s6bb2d_di" bpmnElement="DecomposeService">
<dc:Bounds x="-537" y="180" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="-550" y="220" width="61" height="24" />
diff --git a/bpmn/MSOInfrastructureBPMN/src/test/java/org/openecomp/mso/bpmn/infrastructure/CreateVfModuleInfraTest.java b/bpmn/MSOInfrastructureBPMN/src/test/java/org/openecomp/mso/bpmn/infrastructure/CreateVfModuleInfraTest.java
index de2ae771a5..27f421dcc7 100644
--- a/bpmn/MSOInfrastructureBPMN/src/test/java/org/openecomp/mso/bpmn/infrastructure/CreateVfModuleInfraTest.java
+++ b/bpmn/MSOInfrastructureBPMN/src/test/java/org/openecomp/mso/bpmn/infrastructure/CreateVfModuleInfraTest.java
@@ -21,6 +21,7 @@
package org.openecomp.mso.bpmn.infrastructure;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockPatchGenericVnf;
+import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockGetGenericVnfsByVnfId;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockPatchVfModuleId;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockAAIVfModule;
import static org.openecomp.mso.bpmn.mock.StubResponseAAI.MockSDNCAdapterVfModule;
@@ -87,6 +88,7 @@ public class CreateVfModuleInfraTest extends WorkflowTest {
logStart();
MockAAIVfModule();
+ MockGetGenericVnfsByVnfId("skask","__files/AAI/AAI_genericVnfGet.json",200);
MockPatchGenericVnf("skask");
MockPatchVfModuleId("skask", ".*");
MockSDNCAdapterVfModule();
@@ -148,6 +150,7 @@ public class CreateVfModuleInfraTest extends WorkflowTest {
logStart();
MockAAIVfModule();
+ MockGetGenericVnfsByVnfId("skask","__files/AAI/AAI_genericVnfGet.json",200);
MockPatchGenericVnf("skask");
MockPatchVfModuleId("skask", ".*");
MockSDNCAdapterVfModule();
@@ -239,6 +242,7 @@ public class CreateVfModuleInfraTest extends WorkflowTest {
MockAAIVfModule();
+ MockGetGenericVnfsByVnfId("skask","__files/AAI/AAI_genericVnfGet.json",200);
MockPatchGenericVnf("skask");
MockPatchVfModuleId("skask", ".*");
MockSDNCAdapterVfModule();
@@ -325,6 +329,7 @@ public class CreateVfModuleInfraTest extends WorkflowTest {
logStart();
MockAAIVfModule();
+ MockGetGenericVnfsByVnfId("skask","__files/AAI/AAI_genericVnfGet.json",200);
MockPatchGenericVnf("skask");
MockPatchVfModuleId("skask", ".*");
MockSDNCAdapterVfModule();
diff --git a/bpmn/MSOInfrastructureBPMN/src/test/resources/__files/AAI/AAI_genericVnfGet.json b/bpmn/MSOInfrastructureBPMN/src/test/resources/__files/AAI/AAI_genericVnfGet.json
new file mode 100644
index 0000000000..09d7758f04
--- /dev/null
+++ b/bpmn/MSOInfrastructureBPMN/src/test/resources/__files/AAI/AAI_genericVnfGet.json
@@ -0,0 +1,9 @@
+{
+ "vnf-id": "msoVnf123",
+ "vnf-name": "MSO-Test-VNF-123",
+ "vnf-type": "vnf-type",
+ "orchestration-status": "active",
+ "in-maint": false,
+ "is-closed-loop-disabled": false,
+ "resource-version": "1525360206136"
+} \ No newline at end of file
diff --git a/docs/SO_R1_Interface.rst b/docs/SO_R1_Interface.rst
index df68005d80..3c0d01917b 100644
--- a/docs/SO_R1_Interface.rst
+++ b/docs/SO_R1_Interface.rst
@@ -1025,7 +1025,7 @@ Request Object
+-------------------+---------+-----------+--------------------------+-------------------------------------------+
|Attribute |Qualifier|Cardinality|Content |Description |
+===================+=========+===========+==========================+===========================================+
-|requestId |M |1 |String |Request Id |
+|requestId |M |1 |String |Request Id. |
+-------------------+---------+-----------+--------------------------+-------------------------------------------+
|startTime |M |1 |request Object |Start time. |
+-------------------+---------+-----------+--------------------------+-------------------------------------------+