Catch exceptions during the select BB method for 57/115057/1
authorBoslet, Cory <cory.boslet@att.com>
Wed, 18 Nov 2020 20:38:07 +0000 (15:38 -0500)
committerBenjamin, Max (mb388a) <mb388a@att.com>
Wed, 18 Nov 2020 20:38:08 +0000 (15:38 -0500)
Catch exceptions during the select BB method for more info
Removed unused import added by mistake

Issue-ID: SO-3392
Signed-off-by: Benjamin, Max (mb388a) <mb388a@att.com>
Change-Id: Ieb63a10708d9f023f4f3ae1e27ffafb28b8858e1

bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasks.java

index 217b3a8..df82142 100644 (file)
@@ -99,22 +99,26 @@ public class WorkflowActionBBTasks {
     private RequestsDbListenerRunner requestsDbListener;
 
     public void selectBB(DelegateExecution execution) {
-        List<ExecuteBuildingBlock> flowsToExecute =
-                (List<ExecuteBuildingBlock>) execution.getVariable("flowsToExecute");
-        execution.setVariable("MacroRollback", false);
         try {
-            flowManipulatorListenerRunner.modifyFlows(flowsToExecute, new DelegateExecutionImpl(execution));
-        } catch (NullPointerException ex) {
-            workflowAction.buildAndThrowException(execution, "Error in FlowManipulator Modify Flows", ex);
-        }
-        int currentSequence = (int) execution.getVariable(G_CURRENT_SEQUENCE);
+            List<ExecuteBuildingBlock> flowsToExecute =
+                    (List<ExecuteBuildingBlock>) execution.getVariable("flowsToExecute");
+            execution.setVariable("MacroRollback", false);
+            try {
+                flowManipulatorListenerRunner.modifyFlows(flowsToExecute, new DelegateExecutionImpl(execution));
+            } catch (NullPointerException ex) {
+                workflowAction.buildAndThrowException(execution, "Error in FlowManipulator Modify Flows", ex);
+            }
+            int currentSequence = (int) execution.getVariable(G_CURRENT_SEQUENCE);
 
-        ExecuteBuildingBlock ebb = flowsToExecute.get(currentSequence);
+            ExecuteBuildingBlock ebb = flowsToExecute.get(currentSequence);
 
-        execution.setVariable("buildingBlock", ebb);
-        currentSequence++;
-        execution.setVariable(COMPLETED, currentSequence >= flowsToExecute.size());
-        execution.setVariable(G_CURRENT_SEQUENCE, currentSequence);
+            execution.setVariable("buildingBlock", ebb);
+            currentSequence++;
+            execution.setVariable(COMPLETED, currentSequence >= flowsToExecute.size());
+            execution.setVariable(G_CURRENT_SEQUENCE, currentSequence);
+        } catch (Exception e) {
+            workflowAction.buildAndThrowException(execution, "Internal Error occured during selectBB", e);
+        }
     }
 
     public void updateFlowStatistics(DelegateExecution execution) {