Browse Source

If a generator model is created for java codegenerator via wizard valid statemachine names are created now.

markus.muehlbrandt@itemis.de 14 years ago
parent
commit
0ef4e7e0b1

+ 2 - 0
Examples/org.yakindu.sct.generator.java.trafficlight/src-gen/org/yakindu/sct/runtime/java/IStatemachine.java

@@ -15,4 +15,6 @@ public interface IStatemachine {
 	public void init();
 
 	public void runCycle();
+
+	public void enter();
 }

+ 1 - 1
Examples/org.yakindu.sct.generator.java.trafficlight/src-gen/org/yakindu/sct/runtime/java/trafficlightwaiting/TrafficLightWaitingCycleBasedStatemachine.java

@@ -122,7 +122,7 @@ public class TrafficLightWaitingCycleBasedStatemachine
 		return interfaceDefault;
 	}
 
-	public void enterSequenceStatechartTrafficLightWaiting() {
+	public void enter() {
 		cycleStartTime = System.currentTimeMillis();
 		enterSequenceOn();
 	}

+ 1 - 1
Examples/org.yakindu.sct.generator.java.trafficlight/src/org/yakindu/sct/examples/java/trafficlight/CrossingDemo.java

@@ -72,7 +72,7 @@ public class CrossingDemo {
 				// implementation of a TimerHandler. It has to implement the
 				// ITimerHandler interface.
 				statemachine.setTimerHandler(new TimerHandler(statemachine));
-				statemachine.enterSequenceStatechartTrafficLightWaiting();
+				statemachine.enter();
 				while (!isInterrupted()) {
 					statemachine.runCycle();
 					try {

+ 1 - 1
plugins/org.yakindu.sct.generator.java/src/org/yakindu/sct/generator/java/features/JavaFeatureConstants.java

@@ -42,7 +42,7 @@ public final class JavaFeatureConstants implements IJavaFeatureConstants {
 		return LICENSE_TEXT;
 	}
 	
-	public static final String getStatemachineName(String name) {
+	public static final String getValidStatemachineName(String name) {
 		//remove whitespaces;
 		String newName = name.replace(" ", "").toLowerCase();
 		for (String keyword : Arrays.asList(JAVA_KEYWORDS)) {				

+ 11 - 8
plugins/org.yakindu.sct.generator.java/src/org/yakindu/sct/generator/java/features/JavaFeatureValueProvider.java

@@ -14,6 +14,7 @@ import static org.yakindu.sct.generator.java.features.IJavaFeatureConstants.BASE
 import static org.yakindu.sct.generator.java.features.IJavaFeatureConstants.IMPLEMENTATION_SUFFIX;
 import static org.yakindu.sct.generator.java.features.IJavaFeatureConstants.LIBRARY_NAME;
 import static org.yakindu.sct.generator.java.features.IJavaFeatureConstants.JAVA_KEYWORDS;
+import org.yakindu.sct.generator.java.features.JavaFeatureConstants;
 
 import java.util.Arrays;
 import java.util.regex.Matcher;
@@ -41,7 +42,8 @@ public class JavaFeatureValueProvider extends
 	protected void setDefaultValue(FeatureParameterValue parameterValue,
 			Statechart statechart) {
 		if (parameterValue.getParameter().getName().equals(BASE_PACKAGE)) {
-			parameterValue.setValue("org.yakindu.sct." + statechart.getName());
+			parameterValue.setValue("org.yakindu.sct."
+					+ JavaFeatureConstants.getValidStatemachineName(statechart.getName()));
 		} else if (parameterValue.getParameter().getName()
 				.equals(IMPLEMENTATION_SUFFIX)) {
 			parameterValue.setValue("impl");
@@ -58,9 +60,10 @@ public class JavaFeatureValueProvider extends
 			if (!value.getStringValue().matches(PACKAGE_NAME_REGEX)) {
 				return error("Invalid package name");
 			}
-			//Filter out java keywords
-			for (String keyword : Arrays.asList(JAVA_KEYWORDS)) {				
-				Pattern pattern= Pattern.compile("(?:^|\\.)" +keyword+"(?:$|\\.)");
+			// Filter out java keywords
+			for (String keyword : Arrays.asList(JAVA_KEYWORDS)) {
+				Pattern pattern = Pattern.compile("(?:^|\\.)" + keyword
+						+ "(?:$|\\.)");
 				Matcher matcher = pattern.matcher(value.getStringValue());
 				while (matcher.find()) {
 					return error("Java keyword '" + matcher.group()
@@ -72,16 +75,16 @@ public class JavaFeatureValueProvider extends
 			if (!value.getStringValue().matches(SUFFIX_REGEX)) {
 				return error("Invalid value");
 			}
-			for (String keyword : Arrays.asList(JAVA_KEYWORDS)) {				
-				Pattern pattern= Pattern.compile("^" +keyword+"$");
+			for (String keyword : Arrays.asList(JAVA_KEYWORDS)) {
+				Pattern pattern = Pattern.compile("^" + keyword + "$");
 				Matcher matcher = pattern.matcher(value.getStringValue());
 				while (matcher.find()) {
 					return error("Java keyword '" + matcher.group()
 							+ "' is not allowed as suffix.");
 				}
 			}
-			
-		}		
+
+		}
 		return Status.OK_STATUS;
 	}
 }

+ 1 - 1
plugins/org.yakindu.sct.generator.java/src/org/yakindu/sct/generator/java/templates/Naming.ext

@@ -20,7 +20,7 @@ extension org::yakindu::sct::generator::java::templates::Expression;
 extension org::yakindu::sct::generator::java::templates::ExecutionModelExtensions;
 
 String getStatemachineName(String name) :
-	JAVA org.yakindu.sct.generator.java.features.JavaFeatureConstants.getStatemachineName(java.lang.String);
+	JAVA org.yakindu.sct.generator.java.features.JavaFeatureConstants.getValidStatemachineName(java.lang.String);
 String getStatemachineName(ExecutionFlow this) : 
 	 name.getStatemachineName();
 String getBaseStatemachineName(ExecutionFlow this) : name.toFirstUpper() + "AbstractBaseStatemachine";

+ 1 - 1
test-plugins/org.yakindu.sct.generator.java.runtime.test/src/org/yakindu/sct/generator/java/runtime/test/TestExpressionCycleBasedStatemachine.java

@@ -14,7 +14,7 @@ public class TestExpressionCycleBasedStatemachine {
 	@Before
 	public void setUp() {
 		statemachine = new Test_ExpressionCycleBasedStatemachine();
-		statemachine.enterSequenceStatechartTest_Expression();
+		statemachine.enter();
 	}
 
 	@After

+ 1 - 1
test-plugins/org.yakindu.sct.generator.java.runtime.test/src/org/yakindu/sct/generator/java/runtime/test/TestInterfaceTestCycleBasedStatemachine.java

@@ -34,7 +34,7 @@ public class TestInterfaceTestCycleBasedStatemachine {
 	@Before
 	public void setUp() {
 		statemachine = new InterfaceTestCycleBasedStatemachine();
-		statemachine.enterSequenceStatechartInterfaceTest();
+		statemachine.enter();
 	}
 
 	@After

+ 2 - 2
test-plugins/org.yakindu.sct.generator.java.runtime.test/src/org/yakindu/sct/generator/java/runtime/test/TestLocalActionsCycleBasedStatemachine.java

@@ -44,7 +44,7 @@ public class TestLocalActionsCycleBasedStatemachine {
 	public void setUp() {
 		statemachine = new Test_LocalActionsCycleBasedStatemachine();
 		statemachine.setTimerHandler(new TimerHandler(statemachine));
-		statemachine.enterSequenceStatechartTest_LocalActions();
+		statemachine.enter();
 	}
 
 	@After
@@ -57,7 +57,7 @@ public class TestLocalActionsCycleBasedStatemachine {
 	public void testExceptionHandling() {
 		try {
 			Test_LocalActionsCycleBasedStatemachine statemachine = new Test_LocalActionsCycleBasedStatemachine();
-			statemachine.enterSequenceStatechartTest_LocalActions();
+			statemachine.enter();
 			fail("Statemachine should throw a NullPointerException if entered without TimerHandler set before");
 		} catch (NullPointerException exception) {