diff options
author | hyu2010 <henry.yu1@huawei.com> | 2020-10-15 17:28:23 -0400 |
---|---|---|
committer | hyu2010 <hyu2010b@gmail.com> | 2020-10-15 17:40:40 -0400 |
commit | 001a5425a9ccce5d1ac0919d39ccdeb137f438e8 (patch) | |
tree | 3a7914a50376316f871e414ed365fd0f8a60ed56 /bpmn/so-bpmn-infrastructure-common/src | |
parent | 432a5fe384fe559ddb167d2a1ceb7916f5379a4d (diff) |
Fixes for bugs found in Transport Slicing integration
This update contains for the fixes for the following JIRAs:
SO-3308: Transport Slicing integration: MSOWorkflowException:
mso-request-id not provided
SO-3309: Transport Slicing integration: unable to get prefix
environment variable from execution in TnNssmfUntils
SO-3310: Transport Slicing Integration: null pointer exception
in saving SDNC rollback data
Issue-ID: SO-3308
Issue-ID: SO-3309
Issue-ID: SO-3310
Signed-off-by: hyu2010 <henry.yu1@huawei.com>
Change-Id: I0c9ed038454b309914ddee6ea2366db58f248f9f
Signed-off-by: hyu2010 <hyu2010b@gmail.com>
Diffstat (limited to 'bpmn/so-bpmn-infrastructure-common/src')
2 files changed, 33 insertions, 7 deletions
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeallocateTnNssi.groovy b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeallocateTnNssi.groovy index baf0333a19..fbb2b00854 100644 --- a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeallocateTnNssi.groovy +++ b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/DoDeallocateTnNssi.groovy @@ -93,7 +93,7 @@ class DoDeallocateTnNssi extends AbstractServiceTaskProcessor { try { String serviceInstanceId = execution.getVariable("serviceInstanceID") - String sdncRequest = tnNssmfUtils.buildSDNCRequest(execution, serviceInstanceId, "deallocate") + String sdncRequest = tnNssmfUtils.buildSDNCRequest(execution, serviceInstanceId, "delete") execution.setVariable("TNNSSMF_SDNCRequest", sdncRequest) logger.debug("Outgoing SDNCRequest is: \n" + sdncRequest) diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/TnNssmfUtils.groovy b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/TnNssmfUtils.groovy index 1bb0e8aca7..92953fd60b 100644 --- a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/TnNssmfUtils.groovy +++ b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/TnNssmfUtils.groovy @@ -66,7 +66,29 @@ class TnNssmfUtils { } } - String buildSDNCRequest(DelegateExecution execution, String svcInstId, String action) { + String buildSDNCRequest(DelegateExecution execution, String svcInstId, String svcAction) { + String reqAction + switch (svcAction) { + case "create": + reqAction = "AllocateTransportSliceInstance" + break + case "delete": + reqAction = "DeleteTransportSliceInstance" + break + case "activate": + reqAction = "ActivateTransportSliceInstance" + break + case "deactivate": + reqAction = "DeactivateTransportSliceInstance" + break + default: + reqAction = svcAction + } + + buildSDNCRequest(execution, svcInstId, svcAction, reqAction) + } + + String buildSDNCRequest(DelegateExecution execution, String svcInstId, String svcAction, String reqAction) { String uuid = execution.getVariable('testReqId') // for junits if (uuid == null) { @@ -105,7 +127,7 @@ class TnNssmfUtils { <sdncadapter:RequestHeader> <sdncadapter:RequestId>${MsoUtils.xmlEscape(uuid)}</sdncadapter:RequestId> <sdncadapter:SvcInstanceId>${MsoUtils.xmlEscape(svcInstId)}</sdncadapter:SvcInstanceId> - <sdncadapter:SvcAction>${MsoUtils.xmlEscape(action)}</sdncadapter:SvcAction> + <sdncadapter:SvcAction>${MsoUtils.xmlEscape(svcAction)}</sdncadapter:SvcAction> <sdncadapter:SvcOperation>vnf-topology-operation</sdncadapter:SvcOperation> <sdncadapter:CallbackUrl>${MsoUtils.xmlEscape(callbackURL)}</sdncadapter:CallbackUrl> <sdncadapter:MsoAction>generic-resource</sdncadapter:MsoAction> @@ -113,7 +135,7 @@ class TnNssmfUtils { <sdncadapterworkflow:SDNCRequestData> <request-information> <request-id>${MsoUtils.xmlEscape(requestId)}</request-id> - <request-action>AllocateTnNssi</request-action> + <request-action>${MsoUtils.xmlEscape(reqAction)}</request-action> <source>${MsoUtils.xmlEscape(source)}</source> <notification-url/> <order-number/> @@ -168,7 +190,7 @@ class TnNssmfUtils { String msg - String prefix = execution.setVariable("prefix") + String prefix = execution.getVariable("prefix") if (isBlank(prefix)) { if (exceptionOnErr) { msg = "validateSDNCResponse: prefix is null" @@ -181,7 +203,8 @@ class TnNssmfUtils { WorkflowException workflowException = execution.getVariable("WorkflowException") boolean successIndicator = execution.getVariable("SDNCA_SuccessIndicator") - logger.debug("workflowException: " + workflowException) + logger.debug("TnNssmfUtils.validateSDNCResponse: SDNCResponse: " + response) + logger.debug("TnNssmfUtils.validateSDNCResponse: workflowException: " + workflowException) sdncAdapterUtils.validateSDNCResponse(execution, response, workflowException, successIndicator) @@ -189,6 +212,9 @@ class TnNssmfUtils { if (execution.getVariable(prefix + 'sdncResponseSuccess') == true) { logger.debug("Received a Good Response from SDNC Adapter for " + method + " SDNC Call. Response is: \n" + sdncResponse) RollbackData rollbackData = execution.getVariable("rollbackData") + if (rollbackData == null) { + rollbackData = new RollbackData() + } if (method.equals("allocate")) { rollbackData.put("VNFMODULE", "rollbackSDNCRequestAllocate", "true") @@ -204,7 +230,7 @@ class TnNssmfUtils { execution.setVariable("rollbackData", rollbackData) } else { if (exceptionOnErr) { - msg = "validateSDNCResponse: bad Response from SDNC Adapter for " + method + " SDNC Call." + msg = "TnNssmfUtils.validateSDNCResponse: bad Response from SDNC Adapter for " + method + " SDNC Call." logger.error(msg) exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg) } |