aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/HandlePNF.groovy12
-rw-r--r--bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/HandlePNF.bpmn26
-rw-r--r--mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/WorkflowSpecificationsHandler.java4
-rw-r--r--mso-api-handlers/mso-api-handler-infra/src/test/resources/__files/catalogdb/WorkflowSpecifications.json3
4 files changed, 21 insertions, 24 deletions
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/HandlePNF.groovy b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/HandlePNF.groovy
index 261f107140..f06d71cec4 100644
--- a/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/HandlePNF.groovy
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/groovy/org/onap/so/bpmn/infrastructure/scripts/HandlePNF.groovy
@@ -38,18 +38,26 @@ public class HandlePNF extends AbstractServiceTaskProcessor{
@Override
void preProcessRequest(DelegateExecution execution) {
logger.debug("Start preProcess for HandlePNF")
-
// set correlation ID
def resourceInput = execution.getVariable("resourceInput")
String serInput = jsonUtil.getJsonValue(resourceInput, "requestsInputs")
String correlationId = jsonUtil.getJsonValue(serInput, "service.parameters.requestInputs.ont_ont_pnf_name")
if (!StringUtils.isEmpty(correlationId)) {
- execution.setVariable(ExecutionVariableNames.CORRELATION_ID, correlationId)
+ execution.setVariable(ExecutionVariableNames.PNF_CORRELATION_ID, correlationId)
logger.debug("Found correlation id : " + correlationId)
} else {
logger.error("== correlation id is empty ==")
exceptionUtil.buildAndThrowWorkflowException(execution, 7000, "correlation id is not provided")
}
+
+ String serviceInstanceID = jsonUtil.getJsonValue(resourceInput, ExecutionVariableNames.SERVICE_INSTANCE_ID)
+ if (!StringUtils.isEmpty(serviceInstanceID)) {
+ execution.setVariable(ExecutionVariableNames.SERVICE_INSTANCE_ID, serviceInstanceID)
+ logger.debug("found serviceInstanceID: "+serviceInstanceID)
+ } else {
+ logger.error("== serviceInstance ID is empty ==")
+ exceptionUtil.buildAndThrowWorkflowException(execution, 7000, "serviceInstance ID is not provided")
+ }
// next task will set the uuid
logger.debug("exit preProcess for HandlePNF")
diff --git a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/HandlePNF.bpmn b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/HandlePNF.bpmn
index c81b289737..257a0dee64 100644
--- a/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/HandlePNF.bpmn
+++ b/bpmn/so-bpmn-infrastructure-flows/src/main/resources/process/HandlePNF.bpmn
@@ -1,19 +1,17 @@
<?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:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.16.2">
+<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:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="2.2.4">
<bpmn:process id="HandlePNF" name="HandlePNF" isExecutable="true">
<bpmn:startEvent id="createNS_StartEvent_pnf_disc" name="start PNF handling">
<bpmn:outgoing>SequenceFlow_1c92ks3_activate</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:scriptTask id="Task_13sx2bp_activate" name="Pre Process Request" scriptFormat="groovy">
<bpmn:incoming>SequenceFlow_1c92ks3_activate</bpmn:incoming>
- <bpmn:outgoing>SequenceFlow_17xr584</bpmn:outgoing>
<bpmn:outgoing>SequenceFlow_12q67gd</bpmn:outgoing>
<bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
def handlePNF = new HandlePNF()
handlePNF.preProcessRequest(execution)</bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="SequenceFlow_1c92ks3_activate" sourceRef="createNS_StartEvent_pnf_disc" targetRef="Task_13sx2bp_activate" />
- <bpmn:sequenceFlow id="SequenceFlow_17xr584" sourceRef="Task_13sx2bp_activate" targetRef="Task_0kv28gm" />
<bpmn:sequenceFlow id="SequenceFlow_0pujwl4" sourceRef="Task_0657l04" targetRef="PostProcessPNFDiscovery" />
<bpmn:endEvent id="EndEvent_0pigsdfk3" name="end PNF hadler">
<bpmn:incoming>SequenceFlow_02fi1yn</bpmn:incoming>
@@ -21,8 +19,10 @@ handlePNF.preProcessRequest(execution)</bpmn:script>
<bpmn:sequenceFlow id="SequenceFlow_1la8oih" sourceRef="PostProcessPNFDiscovery" targetRef="Task_1r8h7of" />
<bpmn:callActivity id="Task_0657l04" name="invoke pnf handler" calledElement="CreateAndActivatePnfResource">
<bpmn:extensionElements>
- <camunda:in source="correlationId" target="correlationId" />
+ <camunda:in source="pnfCorrelationId" target="pnfCorrelationId" />
<camunda:in source="pnfUuid" target="pnfUuid" />
+ <camunda:in source="serviceInstanceId" target="serviceInstanceId" />
+ <camunda:in businessKey="#{execution.processBusinessKey}" />
</bpmn:extensionElements>
<bpmn:incoming>SequenceFlow_1apj1fn</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0pujwl4</bpmn:outgoing>
@@ -30,7 +30,6 @@ handlePNF.preProcessRequest(execution)</bpmn:script>
<bpmn:scriptTask id="PostProcessPNFDiscovery" name="Post Process Request" scriptFormat="groovy">
<bpmn:incoming>SequenceFlow_0pujwl4</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_1la8oih</bpmn:outgoing>
- <bpmn:outgoing>SequenceFlow_1ezf4gu</bpmn:outgoing>
<bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
def handlePNF = new HandlePNF()
handlePNF.postProcessRequest(execution)</bpmn:script>
@@ -39,13 +38,10 @@ handlePNF.postProcessRequest(execution)</bpmn:script>
<bpmn:sequenceFlow id="SequenceFlow_1apj1fn" sourceRef="Task_0kv28gm" targetRef="Task_0657l04" />
<bpmn:serviceTask id="Task_0kv28gm" name="Generate PNF uuid" camunda:delegateExpression="${GeneratePnfUuidDelegate}">
<bpmn:incoming>SequenceFlow_12q67gd</bpmn:incoming>
- <bpmn:incoming>SequenceFlow_17xr584</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_1apj1fn</bpmn:outgoing>
</bpmn:serviceTask>
- <bpmn:sequenceFlow id="SequenceFlow_1ezf4gu" sourceRef="PostProcessPNFDiscovery" targetRef="Task_1r8h7of" />
<bpmn:sequenceFlow id="SequenceFlow_02fi1yn" sourceRef="Task_1r8h7of" targetRef="EndEvent_0pigsdfk3" />
<bpmn:scriptTask id="Task_1r8h7of" name="Send Sync Response" scriptFormat="groovy">
- <bpmn:incoming>SequenceFlow_1ezf4gu</bpmn:incoming>
<bpmn:incoming>SequenceFlow_1la8oih</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_02fi1yn</bpmn:outgoing>
<bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
@@ -68,10 +64,6 @@ handlePNF.sendSyncResponse(execution)</bpmn:script>
<di:waypoint x="-428" y="324" />
<di:waypoint x="-341" y="324" />
</bpmndi:BPMNEdge>
- <bpmndi:BPMNEdge id="SequenceFlow_17xr584_di" bpmnElement="SequenceFlow_17xr584">
- <di:waypoint x="-241" y="324" />
- <di:waypoint x="-180" y="324" />
- </bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="SequenceFlow_0pujwl4_di" bpmnElement="SequenceFlow_0pujwl4">
<di:waypoint x="81" y="324" />
<di:waypoint x="156" y="324" />
@@ -94,19 +86,15 @@ handlePNF.sendSyncResponse(execution)</bpmn:script>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_12q67gd_di" bpmnElement="SequenceFlow_12q67gd">
<di:waypoint x="-241" y="324" />
- <di:waypoint x="-180" y="324" />
+ <di:waypoint x="-176" y="324" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="SequenceFlow_1apj1fn_di" bpmnElement="SequenceFlow_1apj1fn">
- <di:waypoint x="-80" y="324" />
+ <di:waypoint x="-76" y="324" />
<di:waypoint x="-19" y="324" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="ServiceTask_1y3h50n_di" bpmnElement="Task_0kv28gm">
- <dc:Bounds x="-180" y="284" width="100" height="80" />
+ <dc:Bounds x="-176" y="284" width="100" height="80" />
</bpmndi:BPMNShape>
- <bpmndi:BPMNEdge id="SequenceFlow_1ezf4gu_di" bpmnElement="SequenceFlow_1ezf4gu">
- <di:waypoint x="256" y="324" />
- <di:waypoint x="353" y="324" />
- </bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="SequenceFlow_02fi1yn_di" bpmnElement="SequenceFlow_02fi1yn">
<di:waypoint x="453" y="324" />
<di:waypoint x="543" y="324" />
diff --git a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/WorkflowSpecificationsHandler.java b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/WorkflowSpecificationsHandler.java
index e8171ac834..bba8064f7c 100644
--- a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/WorkflowSpecificationsHandler.java
+++ b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/WorkflowSpecificationsHandler.java
@@ -175,7 +175,7 @@ public class WorkflowSpecificationsHandler {
private List<WorkflowInputParameter> buildWorkflowInputParameters(Workflow workflow) {
List<WorkflowActivitySpecSequence> workflowActivitySpecSequences = workflow.getWorkflowActivitySpecSequence();
if (workflowActivitySpecSequences == null || workflowActivitySpecSequences.size() == 0) {
- return null;
+ return new ArrayList<WorkflowInputParameter>();
}
Map<String, WorkflowInputParameter> workflowInputParameterMap = new HashMap<String, WorkflowInputParameter>();
for (WorkflowActivitySpecSequence workflowActivitySpecSequence : workflowActivitySpecSequences) {
@@ -199,7 +199,7 @@ public class WorkflowSpecificationsHandler {
}
if (workflowInputParameterMap.size() == 0) {
- return null;
+ return new ArrayList<WorkflowInputParameter>();
}
List<WorkflowInputParameter> workflowInputParameterList =
workflowInputParameterMap.values().stream().collect(Collectors.toList());
diff --git a/mso-api-handlers/mso-api-handler-infra/src/test/resources/__files/catalogdb/WorkflowSpecifications.json b/mso-api-handlers/mso-api-handler-infra/src/test/resources/__files/catalogdb/WorkflowSpecifications.json
index 545fbbe26c..59bc12d92d 100644
--- a/mso-api-handlers/mso-api-handler-infra/src/test/resources/__files/catalogdb/WorkflowSpecifications.json
+++ b/mso-api-handlers/mso-api-handler-infra/src/test/resources/__files/catalogdb/WorkflowSpecifications.json
@@ -122,7 +122,8 @@
"operationName": "inPlaceSoftwareUpdate",
"workflowSource": "native",
"workflowResourceTarget": "vnf"
- }
+ },
+ "workflowInputParameters": []
}
}
]