From d57c30a60f84e6af065b1a698e89e514dbdc0016 Mon Sep 17 00:00:00 2001
From: Florian Lambers <fl462057@fh-muenster.de>
Date: Thu, 11 Nov 2021 16:10:23 +0100
Subject: [PATCH] added businessruletask resultvariable

---
 .../Testgenerator/rest/service/test/TestService.java        | 4 +++-
 .../masterthesis/Testgenerator/utils/BPMNParseUtils.java    | 6 ++++++
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/rest/service/test/TestService.java b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/rest/service/test/TestService.java
index 9e4f962..35027be 100644
--- a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/rest/service/test/TestService.java
+++ b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/rest/service/test/TestService.java
@@ -372,7 +372,9 @@ public class TestService {
 		} else if (flowElement instanceof ScriptTask) {
 			return TestgeneratorDSLObjectCreator.createScriptTaskFlowElement(flowElement.getId());
 		} else if (flowElement instanceof BusinessRuleTask) {
-			return TestgeneratorDSLObjectCreator.createBusinessRuleTaskFlowElement(flowElement.getId());
+			String resultVariable = BPMNParseUtils.getResultVariable((BusinessRuleTask) flowElement);
+			
+			return TestgeneratorDSLObjectCreator.createBusinessRuleTaskFlowElement(flowElement.getId(), resultVariable);
 		} else if (flowElement instanceof ServiceTask) {
 			String delegate = getDelegate((ServiceTask) flowElement);
 			String externalTopicTextual = getExternalTopic((ServiceTask) flowElement);
diff --git a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java
index 93b97cd..1058f48 100644
--- a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java
+++ b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java
@@ -10,6 +10,7 @@ import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 import org.camunda.bpm.model.bpmn.BpmnModelInstance;
+import org.camunda.bpm.model.bpmn.instance.BusinessRuleTask;
 import org.camunda.bpm.model.bpmn.instance.ServiceTask;
 import org.camunda.bpm.model.dmn.DmnModelInstance;
 
@@ -223,6 +224,11 @@ public class BPMNParseUtils {
 		return externalTopic;
 	}
 	
+	public static String getResultVariable(BusinessRuleTask businessRuleTask) {
+		String resultVariable = businessRuleTask.getAttributeValueNs(NAMESPACE_URI_BPMN, "resultVariable");
+		return resultVariable;
+	}
+	
 	public static List<VariableDeclaration> getHardcodedVariables(String flowElementId, List<Variable> variables,
 			BPMNIOParameters bpmnIOParameters) {
 		List<VariableDeclaration> hardcodedVariables = new ArrayList<>();
-- 
GitLab