* ============LICENSE_END=========================================================
*/
-package com.att.bpm.scripts;
+package org.openecomp.mso.bpmn.common.scripts;
-import org.openecomp.mso.bpmn.core.WorkflowException
import java.text.SimpleDateFormat
-import org.camunda.bpm.engine.delegate.BpmnError
import org.camunda.bpm.engine.runtime.Execution
-import org.apache.commons.codec.binary.Base64;
+import org.openecomp.mso.bpmn.core.WorkflowException
// SDNC Adapter Request/Response processing
utils.log("DEBUG", "service-type: " + sdnca_serviceType, isDebugEnabled)
def serviceConfigActivate = false
def source = ''
-
+ if ((sdnca_svcAction == 'activate') && (sdnca_svcOperation == 'service-configuration-operation') && (sdnca_serviceType == 'uCPE-VMS')) {
+ serviceConfigActivate = true
+ if (utils.nodeExists(sdncwfreq, 'source')) {
+ source = utils.getNodeText(sdncwfreq, 'source')
+ }
+ }
execution.setVariable("serviceConfigActivate", serviceConfigActivate)
utils.log("DEBUG", "serviceConfigActivate: " + serviceConfigActivate, isDebugEnabled)
execution.setVariable("source", source)
String sdncAdapterRequest = """
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
- <aetgt:SDNCAdapterRequest xmlns:aetgt="http://domain2.att.com/workflow/sdnc/adapter/schema/v1" xmlns:sdncadaptersc="http://domain2.att.com/workflow/sdnc/adapter/schema/v1">
- <sdncadapter:RequestHeader xmlns:sdncadapter="http://domain2.att.com/workflow/sdnc/adapter/schema/v1">
+ <aetgt:SDNCAdapterRequest xmlns:aetgt="http://org.openecomp/workflow/sdnc/adapter/schema/v1" xmlns:sdncadaptersc="http://org.openecomp/workflow/sdnc/adapter/schema/v1">
+ <sdncadapter:RequestHeader xmlns:sdncadapter="http://org.openecomp/workflow/sdnc/adapter/schema/v1">
<sdncadapter:RequestId>${requestId}</sdncadapter:RequestId>"""
if (sdnca_svcInstanceId != null) {
def sdnccallbackreq = execution.getVariable("sdncAdapterCallbackRequest")
def callbackRequestData = ""
def callbackHeader = ""
-
+ utils.logAudit("SDNCAdapterCallback Request :" + sdnccallbackreq)
+
if(sdnccallbackreq != null){
callbackHeader = utils.getNodeXml(sdnccallbackreq, "CallbackHeader")
callbackRequestData = utils.getNodeXml(sdnccallbackreq, "RequestData")
utils.log("DEBUG","DECODED SDNCCallback RequestData is:\n" + callbackRequestData, isDebugEnabled)
String sdncAdapterWorkflowResponse ="""
- <sdncadapterworkflow:SDNCAdapterWorkflowResponse xmlns:sdncadapterworkflow="http://ecomp.att.com/mso/workflow/schema/v1">
+ <sdncadapterworkflow:SDNCAdapterWorkflowResponse xmlns:sdncadapterworkflow="http://org.openecomp/mso/workflow/schema/v1">
<sdncadapterworkflow:response-data>
${callbackHeader}
${callbackRequestData}
utils.log("DEBUG","Outgoing sdncAdapterWorkflowResponse:\n" + sdncAdapterWorkflowResponse, isDebugEnabled)
sdncAdapterWorkflowResponse = utils.formatXml(sdncAdapterWorkflowResponse)
+ utils.logAudit("sdncAdapterWorkflowResponse :" + sdncAdapterWorkflowResponse)
execution.setVariable("sdncAdapterResponse", sdncAdapterWorkflowResponse)
// TODO: Should deprecate use of processKey+Response variable for the response. Will use "WorkflowResponse" instead
execution.setVariable("WorkflowResponse", sdncAdapterWorkflowResponse)
public void callbackResponsecheck(Execution execution){
def sdnccallbackreq=execution.getVariable("sdncAdapterCallbackRequest")
+ utils.logAudit("sdncAdapterCallbackRequest :" + sdnccallbackreq)
if (sdnccallbackreq==null){
execution.setVariable("callbackResponseReceived",false);
}else{
// Determine and set SDNC Timeout Value
def enhancedCallbackRequestData = execution.getVariable("enhancedCallbackRequestData")
+ utils.logAudit("sdncAdapter - enhancedCallbackRequestData :" + enhancedCallbackRequestData)
def interim = false
if (enhancedCallbackRequestData != null) {
if (utils.nodeExists(enhancedCallbackRequestData, "ack-final-indicator")) {
utils.log("DEBUG","=========== End Reset Callback Info SDNCAdapter ===========", isDebugEnabled)
}
- public void prepareCSIMessage(Execution execution) {
-
- }
public void prepareDBMessage(Execution execution) {
utils.log("DEBUG","=========== Begin Prepare DB Message SDNCAdapter ===========", isDebugEnabled)
// Create DB Message
- def dbRequestId = execution.getVariable("att-mso-request-id")
+ def dbRequestId = execution.getVariable("mso-request-id")
String dbUpdateInterimStageCompletion = """
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
- <DBAdapter:updateInterimStageCompletion xmlns:DBAdapter="http://com.att.mso/requestsdb">
+ <DBAdapter:updateInterimStageCompletion xmlns:DBAdapter="http://org.openecomp.mso/requestsdb">
<requestId>${dbRequestId}</requestId>
<interimStageCompletion>1</interimStageCompletion>
<lastModifiedBy>BPEL</lastModifiedBy>
"""
execution.setVariable("dbUpdateInterimStageCompletion", dbUpdateInterimStageCompletion)
+ utils.logAudit("sdncAdapter - dbUpdateInterimStageCompletion :" + dbUpdateInterimStageCompletion)
utils.log("DEBUG","DB UpdateInterimStageCompletion:\n" + dbUpdateInterimStageCompletion, isDebugEnabled)
-
utils.log("DEBUG","=========== End Prepare DB Message SDNCAdapter ===========", isDebugEnabled)
}
- public void prepareCCDMessage(Execution execution) {
-
- def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
-
- utils.log("DEBUG","=========== Begin Prepare CCD Message SDNCAdapter ===========", isDebugEnabled)
-
- try {
- def sdncwfreq= execution.getVariable("sdncAdapterWorkflowRequest")
- def sdncRequestData = utils.getNodeXml(sdncwfreq, "SDNCRequestData", false)
-
- def ccdNotificationUrl = utils.getNodeText(sdncRequestData, 'notification-url')
- execution.setVariable('ccd-notification-url', ccdNotificationUrl)
- utils.log("DEBUG", 'ccd-notification-url: ' + ccdNotificationUrl, isDebugEnabled)
-
- def requestId = utils.getNodeText(sdncRequestData, 'request-id')
- def requestAction = utils.getNodeText(sdncRequestData, 'request-action')
- String payload ="""
- <ns:status-notification
- xmlns:ns="http://ecomp.att.com/mso/statusnotification/schema/v1"
- xmlns:msoservtypes="http://ecomp.att.com/mso/request/types/v1"
- xmlns:structuredtypes="http://ecomp.att.com/mso/structured/types/v1">
- <msoservtypes:request-id>${requestId}</msoservtypes:request-id>
- <msoservtypes:request-action>${requestAction}</msoservtypes:request-action>
- <msoservtypes:source>CCD</msoservtypes:source>
- <msoservtypes:ack-final-indicator>N</msoservtypes:ack-final-indicator>
- <structuredtypes:parameter-list>
- <structuredtypes:parameter>
- <structuredtypes:name>request-stage</structuredtypes:name>
- <structuredtypes:value>DataStagingComplete</structuredtypes:value>
- </structuredtypes:parameter>
- </structuredtypes:parameter-list>
- </ns:status-notification>
- """
- payload = utils.formatXml(payload)
- execution.setVariable('ccd-notification-payload', payload)
- utils.log("DEBUG", 'ccd-notification-payload:\n' + payload, isDebugEnabled)
-
- } catch (BpmnError e) {
- throw e;
- } catch (Exception e) {
- logError('Caught exception in prepareCCDMessage', e)
- exceptionUtil.buildAndThrowWorkflowException(execution, 9999, 'Internal Error') // TODO: what message and error code?
- }
-
- utils.log("DEBUG","=========== End Prepare CCD Message SDNCAdapter ===========", isDebugEnabled)
- }
public String generateCurrentTimeInUtc(){
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");