[MSO-8] Update the maven dependency
[so.git] / bpmn / MSOInfrastructureBPMN / src / main / groovy / org / openecomp / mso / bpmn / infrastructure / scripts / DeleteVnfInfra.groovy
@@ -18,7 +18,7 @@
  * ============LICENSE_END=========================================================
  */
 
-package com.att.bpm.scripts
+package org.openecomp.mso.bpmn.infrastructure.scripts
 
 
 import javax.xml.parsers.DocumentBuilder
@@ -27,15 +27,16 @@ import javax.xml.parsers.DocumentBuilderFactory
 import org.apache.commons.lang3.*
 import org.camunda.bpm.engine.delegate.BpmnError
 import org.camunda.bpm.engine.runtime.Execution
-
 import org.w3c.dom.Document
 import org.w3c.dom.Element
 import org.w3c.dom.Node
 import org.w3c.dom.NodeList
-
 import org.xml.sax.InputSource
 
 
+import org.openecomp.mso.bpmn.common.scripts.AbstractServiceTaskProcessor;
+import org.openecomp.mso.bpmn.common.scripts.ExceptionUtil;
+import org.openecomp.mso.bpmn.common.scripts.VidUtils;
 import org.openecomp.mso.bpmn.core.WorkflowException
 import org.openecomp.mso.bpmn.core.json.JsonUtils;
 
@@ -74,7 +75,7 @@ class DeleteVnfInfra extends AbstractServiceTaskProcessor {
 
                        if(deleteVnfRequest != null){
 
-                               String requestId = execution.getVariable("att-mso-request-id")
+                               String requestId = execution.getVariable("mso-request-id")
                                execution.setVariable("DELVI_requestId", requestId)
 
                                String serviceInstanceId = execution.getVariable("serviceInstanceId")
@@ -88,10 +89,21 @@ class DeleteVnfInfra extends AbstractServiceTaskProcessor {
                                String source = jsonUtil.getJsonValue(deleteVnfRequest, "requestDetails.requestInfo.source")
                                execution.setVariable("DELVI_source", source)
                                utils.log("DEBUG", "Incoming Source is: " + source, isDebugEnabled)
+                               
+                               def cloudConfiguration = jsonUtil.getJsonValue(deleteVnfRequest, "requestDetails.cloudConfiguration")
+                               execution.setVariable("DELVI_cloudConfiguration", cloudConfiguration)
+                               
+                               boolean cascadeDelete = false
+                               Boolean cascadeDeleteObj = jsonUtil.getJsonRawValue(deleteVnfRequest, "requestDetails.requestParameters.cascadeDelete")
+                               if(cascadeDeleteObj!=null){
+                                       cascadeDelete = cascadeDeleteObj.booleanValue()
+                               }
+                               execution.setVariable("DELVI_cascadeDelete", cascadeDelete)
+                               utils.log("DEBUG", "Incoming cascadeDelete is: " + cascadeDelete, isDebugEnabled)
 
                                //For Completion Handler & Fallout Handler
                                String requestInfo =
-                               """<request-info xmlns="http://ecomp.att.com/mso/infra/vnf-request/v1">
+                               """<request-info xmlns="http://org.openecomp/mso/infra/vnf-request/v1">
                                        <request-id>${requestId}</request-id>
                                        <action>DELETE</action>
                                        <source>${source}</source>
@@ -142,51 +154,6 @@ class DeleteVnfInfra extends AbstractServiceTaskProcessor {
                utils.log("DEBUG", "*** COMPLETED DeleteVnfInfra SendSyncResponse Process ***", isDebugEnabled)
        }
 
-       public void processGetVnfResponse(Execution execution){
-               def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
-               execution.setVariable("prefix",Prefix)
-               utils.log("DEBUG", " *** STARTED DeleteVnfInfra processGetVnfResponse Process *** ", isDebugEnabled)
-               try {
-                       String vnf = execution.getVariable("DELVI_genericVnf")
-                       String resourceVersion = utils.getNodeText1(vnf, "resource-version")
-                       execution.setVariable("DELVI_resourceVersion", resourceVersion)
-
-                       if(utils.nodeExists(vnf, "relationship")){
-                               InputSource source = new InputSource(new StringReader(vnf));
-                               DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
-                               DocumentBuilder docBuilder = docFactory.newDocumentBuilder()
-                               Document vnfXml = docBuilder.parse(source)
-
-                               NodeList nodeList = vnfXml.getElementsByTagName("relationship")
-                               for (int x = 0; x < nodeList.getLength(); x++) {
-                                       Node node = nodeList.item(x)
-                                       if (node.getNodeType() == Node.ELEMENT_NODE) {
-                                               Element eElement = (Element) node
-                                               def e = eElement.getElementsByTagName("related-to").item(0).getTextContent()
-                                               if(e.equals("volume-group") || e.equals("l3-network") || e.equals("vserver")){
-                                                       utils.log("DEBUG", "Generic Vnf still has relationship to OpenStack.", isDebugEnabled)
-                                                       execution.setVariable("DELVI_vnfInUse", true)
-                                               }else{
-                                                       utils.log("DEBUG", "Relationship NOT related to OpenStack", isDebugEnabled)
-                                               }
-                                       }
-                               }
-                       }
-
-                       if(utils.nodeExists(vnf, "vf-module")){
-                               execution.setVariable("DELVI_vnfInUse", true)
-                               utils.log("DEBUG", "Generic Vnf still has vf-modules.", isDebugEnabled)
-                       }
-
-
-               } catch (Exception ex) {
-                       utils.log("DEBUG", "Error Occured in DeleteVnfInfra processGetVnfResponse Process " + ex.getMessage(), isDebugEnabled)
-                       exceptionUtil.buildAndThrowWorkflowException(execution, 2500, "Internal Error - Occured in DeleteVnfInfra processGetVnfResponse Process")
-
-               }
-               utils.log("DEBUG", "*** COMPLETED DeleteVnfInfra processGetVnfResponse Process ***", isDebugEnabled)
-       }
-
        public void prepareCompletionHandlerRequest(Execution execution){
                def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
                execution.setVariable("prefix",Prefix)
@@ -199,8 +166,8 @@ class DeleteVnfInfra extends AbstractServiceTaskProcessor {
                        String vnfId = execution.getVariable("DELVI_vnfId")
 
                        String request =
-                               """<aetgt:MsoCompletionRequest xmlns:aetgt="http://ecomp.att.com/mso/workflow/schema/v1"
-                                                                       xmlns:ns="http://ecomp.att.com/mso/request/types/v1">
+                               """<aetgt:MsoCompletionRequest xmlns:aetgt="http://org.openecomp/mso/workflow/schema/v1"
+                                                                       xmlns:ns="http://org.openecomp/mso/request/types/v1">
                                                        ${requestInfo}
                                                        <status-message>Vnf has been deleted successfully.</status-message>
                                                        <vnfId>${vnfId}</vnfId>