From 58613e3575fc2e5fb2dfd536a2fa5cf2ded3292c Mon Sep 17 00:00:00 2001
From: tfli <tfli@d-velop.de>
Date: Wed, 17 Nov 2021 19:27:59 +0100
Subject: [PATCH] Renamed inputvariables to startvariables in startflow

---
 .../masterthesis/TestgeneratorDSL.xtext       |  5 +-
 .../TestgeneratorDSLObjectCreator.java        | 48 ++++++++++++++++---
 2 files changed, 45 insertions(+), 8 deletions(-)

diff --git a/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/TestgeneratorDSL.xtext b/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/TestgeneratorDSL.xtext
index 198f378..c57dff0 100644
--- a/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/TestgeneratorDSL.xtext
+++ b/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/TestgeneratorDSL.xtext
@@ -25,8 +25,7 @@ FlowElement:
 
 StartFlowElement:
 	"FlowElement" name=ID ASSOCIATION "StartEvent" 
-	('with' 'hardcoded' 'inputs' ASSOCIATION LIST_OPEN (hardcodedInputs+=VariableDeclaration (SEPARATOR hardcodedInputs+=VariableDeclaration)*)? LIST_CLOSED)?
-	('with' 'startVariables' ASSOCIATION LIST_OPEN (startVariables+=VariableReference (SEPARATOR startVariables+=VariableReference)*)? LIST_CLOSED)? 
+	('with' 'inputVariables' ASSOCIATION LIST_OPEN (inputVariables+=VariableReference (SEPARATOR inputVariables+=VariableReference)*)? LIST_CLOSED)?
 	DECLARATION_FINISHED;
 	
 EndFlowElement:
@@ -62,6 +61,8 @@ ServiceTaskFlowElement:
 DelegateServiceTaskFlowElement:
 	"FlowElement" name=ID ASSOCIATION "ServiceTask" 
 	'with' 'delegate' ASSOCIATION delegate=STRING
+	('with' 'inputVariables' ASSOCIATION LIST_OPEN (inputVariables+=VariableReference (SEPARATOR inputVariables+=VariableReference)*)? LIST_CLOSED)? 
+	('with' 'outputVariables' ASSOCIATION LIST_OPEN (outputVariables+=VariableReference (SEPARATOR outputVariables+=VariableReference)*)? LIST_CLOSED)? 
 	('and' 'label' ASSOCIATION label=STRING)?
 	DECLARATION_FINISHED;
 	
diff --git a/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/serialization/TestgeneratorDSLObjectCreator.java b/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/serialization/TestgeneratorDSLObjectCreator.java
index 7530d4e..e8d74ca 100644
--- a/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/serialization/TestgeneratorDSLObjectCreator.java
+++ b/de.fhmuenster.masterthesis.textgeneratordsl/src/de/fhmuenster/masterthesis/serialization/TestgeneratorDSLObjectCreator.java
@@ -95,7 +95,7 @@ public class TestgeneratorDSLObjectCreator {
 		for (Variable startVar : startVariables) {
 			VariableReference variableReference = TestgeneratorDSLFactory.eINSTANCE.createVariableReference();
 			variableReference.setRef(startVar);
-			element.getStartVariables().add(variableReference);
+			element.getInputVariables().add(variableReference);
 		}
 
 		return element;
@@ -148,10 +148,22 @@ public class TestgeneratorDSLObjectCreator {
 		return element;
 	}
 	
-	public static ScriptTaskFlowElement createScriptTaskFlowElement(String name, String label) {
+	public static ScriptTaskFlowElement createScriptTaskFlowElement(String name, List<Variable> inputVariables, List<Variable> outputVariables, String label) {
 		ScriptTaskFlowElement element = TestgeneratorDSLFactory.eINSTANCE.createScriptTaskFlowElement();
 		element.setName(name);
 		element.setLabel(label);
+		
+		for (Variable inputVariable : inputVariables) {
+			VariableReference variableReference = TestgeneratorDSLFactory.eINSTANCE.createVariableReference();
+			variableReference.setRef(inputVariable);
+			element.getInputVariables().add(variableReference);
+		}
+		
+		for (Variable outputVariable : outputVariables) {
+			VariableReference variableReference = TestgeneratorDSLFactory.eINSTANCE.createVariableReference();
+			variableReference.setRef(outputVariable);
+			element.getOutputVariables().add(variableReference);
+		}
 
 		return element;
 	}
@@ -159,15 +171,27 @@ public class TestgeneratorDSLObjectCreator {
 	public static ServiceTaskFlowElement createServiceTaskFlowElement(String name) {
 		ServiceTaskFlowElement element = TestgeneratorDSLFactory.eINSTANCE.createServiceTaskFlowElement();
 		element.setName(name);
-
+		
 		return element;
 	}
 	
-	public static ServiceTaskFlowElement createDelegateServiceTaskFlowElement(String name, String delegate, String label) {
+	public static ServiceTaskFlowElement createDelegateServiceTaskFlowElement(String name, String delegate, List<Variable> inputVariables, List<Variable> outputVariables, String label) {
 		DelegateServiceTaskFlowElement element = TestgeneratorDSLFactory.eINSTANCE.createDelegateServiceTaskFlowElement();
 		element.setName(name);
 		element.setLabel(label);
 		element.setDelegate(delegate);
+		
+		for (Variable inputVariable : inputVariables) {
+			VariableReference variableReference = TestgeneratorDSLFactory.eINSTANCE.createVariableReference();
+			variableReference.setRef(inputVariable);
+			element.getInputVariables().add(variableReference);
+		}
+		
+		for (Variable outputVariable : outputVariables) {
+			VariableReference variableReference = TestgeneratorDSLFactory.eINSTANCE.createVariableReference();
+			variableReference.setRef(outputVariable);
+			element.getOutputVariables().add(variableReference);
+		}
 
 		return element;
 	}
@@ -196,12 +220,24 @@ public class TestgeneratorDSLObjectCreator {
 		return element;
 	}
 	
-	public static BusinessRuleTaskFlowElement createBusinessRuleTaskFlowElement(String name, String resultVariable, String label) {
+	public static BusinessRuleTaskFlowElement createBusinessRuleTaskFlowElement(String name, String resultVariable, List<Variable> inputVariables, List<Variable> outputVariables, String label) {
 		BusinessRuleTaskFlowElement element = TestgeneratorDSLFactory.eINSTANCE.createBusinessRuleTaskFlowElement();
 		element.setName(name);
 		element.setResultVariable(resultVariable);
 		element.setLabel(label);
-
+		
+		for (Variable inputVariable : inputVariables) {
+			VariableReference variableReference = TestgeneratorDSLFactory.eINSTANCE.createVariableReference();
+			variableReference.setRef(inputVariable);
+			element.getInputVariables().add(variableReference);
+		}
+		
+		for (Variable outputVariable : outputVariables) {
+			VariableReference variableReference = TestgeneratorDSLFactory.eINSTANCE.createVariableReference();
+			variableReference.setRef(outputVariable);
+			element.getOutputVariables().add(variableReference);
+		}
+		
 		return element;
 	}
 	
-- 
GitLab