From e2708cba9e8190fd022a87d962721eeea2b1a2e3 Mon Sep 17 00:00:00 2001 From: Srinivasan Ramanathan Date: Wed, 18 Mar 2020 09:23:51 +0000 Subject: Fix for MDONS create and delete flow Added service-name update OTN service for Create flow Added new request format for OTN service Delete flow Change-Id: Iea3362c2a57a376f181de813158462390aaf27e3 Issue-ID: SO-2460 Signed-off-by: Srinivasan Ramanathan --- .../scripts/CreateSDNCNetworkResource.groovy | 19 ++++++++++------ .../scripts/DeleteSDNCNetworkResource.groovy | 25 ++++++++++++++++++++++ .../scripts/DoDeleteE2EServiceInstance.groovy | 11 ++++++++++ .../subprocess/DoDeleteE2EServiceInstance.bpmn | 3 ++- 4 files changed, 51 insertions(+), 7 deletions(-) (limited to 'bpmn') diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy index 8b9726c2b7..7d1bc4c779 100644 --- a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy +++ b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy @@ -127,11 +127,7 @@ public class CreateSDNCNetworkResource extends AbstractServiceTaskProcessor { String key = iterator.next() HashMap hashMap = new HashMap() hashMap.put("name", key) - if(jsonObject.get(key)==null){ - hashMap.put("value", "") - }else{ - hashMap.put("value", jsonObject.get(key)) - } + hashMap.put("value", jsonObject.get(key)) paramList.add(hashMap) } Map>> paramMap = new HashMap() @@ -260,6 +256,17 @@ public class CreateSDNCNetworkResource extends AbstractServiceTaskProcessor { break + case ~/[\w\s\W]*UNI[\w\s\W]*/ : + def resourceInput = resourceInputObj.getResourceParameters() + String incomingRequest = resourceInputObj.getRequestsInputs() + String serviceParameters = JsonUtils.getJsonValue(incomingRequest, "service.parameters") + String requestInputs = JsonUtils.getJsonValue(serviceParameters, "requestInputs") + JSONObject inputParameters = new JSONObject(requestInputs) + String uResourceInput = jsonUtil.addJsonValue(resourceInput, "requestInputs.service-name", inputParameters.get("name")) + resourceInputObj.setResourceParameters(uResourceInput) + execution.setVariable(Prefix + "resourceInput", resourceInputObj.toString()) + break + case ~/[\w\s\W]*sdwanvpnattachment[\w\s\W]*/ : case ~/[\w\s\W]*sotnvpnattachment[\w\s\W]*/ : case ~/[\w\s\W]*SOTN-Attachment[\w\s\W]*/ : @@ -363,7 +370,7 @@ public class CreateSDNCNetworkResource extends AbstractServiceTaskProcessor { opticalservice - ${msoUtils.xmlEscape(hdrRequestId)} + ${msoUtils.xmlEscape(serviceInstanceId)} ${msoUtils.xmlEscape(globalCustomerId)} ${msoUtils.xmlEscape(serviceType)} sdncCallback diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DeleteSDNCNetworkResource.groovy b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DeleteSDNCNetworkResource.groovy index 61b1250522..cdc242dbd8 100644 --- a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DeleteSDNCNetworkResource.groovy +++ b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DeleteSDNCNetworkResource.groovy @@ -221,6 +221,30 @@ public class DeleteSDNCNetworkResource extends AbstractServiceTaskProcessor { switch (modelType) { case "VNF": + if(modelName.contains("UNI") && "MDONS_OTN".equals(serviceType)){ + String serviceInstanceName = resourceInputObj.getResourceInstanceName() + sdncTopologyDeleteRequest = """ + + ${MsoUtils.xmlEscape(hdrRequestId)} + ${MsoUtils.xmlEscape(serviceInstanceId)} + ${MsoUtils.xmlEscape(sdnc_svcAction)} + optical-service-delete + sdncCallback + opticalservice + + + ${msoUtils.xmlEscape(serviceInstanceId)} + + + service-name + ${msoUtils.xmlEscape(serviceInstanceName)} + + + + """.trim() + } else{ sdncTopologyDeleteRequest = """ @@ -275,6 +299,7 @@ public class DeleteSDNCNetworkResource extends AbstractServiceTaskProcessor { """.trim() + } break case "GROUP" : //When a new resource creation request reaches SO, the parent resources information needs to be provided diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeleteE2EServiceInstance.groovy b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeleteE2EServiceInstance.groovy index a24bc4411e..35af3d34d6 100644 --- a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeleteE2EServiceInstance.groovy +++ b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeleteE2EServiceInstance.groovy @@ -450,6 +450,16 @@ public class DoDeleteE2EServiceInstance extends AbstractServiceTaskProcessor { execution.setVariable("serviceModelInfo", serviceDecomposition.getModelInfo()) List deleteResourceList = serviceDecomposition.getServiceResources() + if (serviceDecomposition.getServiceType().equals("MDONS_OTN")){ + for (Resource resource : deleteResourceList) { + String serviceName = execution.getVariable("serviceInstanceName") + String serviceInstanceId = execution.getVariable("serviceInstanceId") + resource.setResourceId(serviceInstanceId) + resource.setResourceInstanceName(serviceName) + def delMap = new ImmutablePair(resource, null) + deleteRealResourceList.add(delMap) + } + } else{ String serviceRelationShip = execution.getVariable("serviceRelationShip") def jsonSlurper = new JsonSlurper() def jsonOutput = new JsonOutput() @@ -492,6 +502,7 @@ public class DoDeleteE2EServiceInstance extends AbstractServiceTaskProcessor { } } } + } // only delete real existing resources execution.setVariable("deleteResourceList", deleteRealResourceList) diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn index 1149cc9ea9..85fe3b4b29 100644 --- a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn +++ b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/subprocess/DoDeleteE2EServiceInstance.bpmn @@ -1,5 +1,5 @@ - + SequenceFlow_0vz7cd9 @@ -131,6 +131,7 @@ dcsi.postDecomposeService(execution) + SequenceFlow_1j08ko3 SequenceFlow_1cevtpy -- cgit 1.2.3-korg