ソースを参照

added Statechart Annotations (#1404)

* added Statechart Annotations

* added dependency to statechart annotations
Andreas Mülder 8 年 前
コミット
e616fc1b5d

+ 3 - 1
plugins/org.yakindu.sct.model.stext.lib/META-INF/MANIFEST.MF

@@ -5,6 +5,8 @@ Bundle-SymbolicName: org.yakindu.sct.model.stext.lib
 Bundle-Version: 2.9.3.qualifier
 Bundle-Activator: org.yakindu.sct.model.stext.lib.STextLibActivator
 Bundle-Vendor: statecharts.org
-Require-Bundle: org.eclipse.core.runtime
+Require-Bundle: org.eclipse.core.runtime,
+ org.yakindu.sct.model.sgraph
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Bundle-ActivationPolicy: lazy
+Export-Package: org.yakindu.sct.model.stext.lib

+ 32 - 0
plugins/org.yakindu.sct.model.stext.lib/src/org/yakindu/sct/model/stext/lib/StatechartAnnotations.java

@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2013 committers of YAKINDU and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * Contributors:
+ * 	committers of YAKINDU - initial API and implementation
+ * 
+ */
+package org.yakindu.sct.model.stext.lib;
+
+import org.yakindu.sct.model.sgraph.Statechart;
+
+/**
+ * 
+ * @author andreas muelder - Initial contribution and API
+ * 
+ */
+public class StatechartAnnotations {
+
+	public static final String CYCLE_BASED_ANNOTATION = "CycleBased";
+	public static final String EVENT_DRIVEN_ANNOTATION = "EventDriven";
+
+	public boolean isCycleBased(Statechart statechart) {
+		return statechart.getAnnotationOfType(EVENT_DRIVEN_ANNOTATION) == null;
+	}
+
+	public boolean isEventDriven(Statechart statechart) {
+		return statechart.getAnnotationOfType(EVENT_DRIVEN_ANNOTATION) != null;
+	}
+}

+ 2 - 1
plugins/org.yakindu.sct.simulation.core.sexec/META-INF/MANIFEST.MF

@@ -15,7 +15,8 @@ Require-Bundle: org.yakindu.sct.simulation.core,
  org.yakindu.sct.commons,
  org.eclipse.emf.workspace,
  org.yakindu.base.xtext.utils.jface,
- org.yakindu.sct.domain
+ org.yakindu.sct.domain,
+ org.yakindu.sct.model.stext.lib
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Bundle-ActivationPolicy: lazy
 Export-Package: org.yakindu.sct.simulation.core.sexec,

+ 2 - 3
plugins/org.yakindu.sct.simulation.core.sexec/src/org/yakindu/sct/simulation/core/sexec/container/DefaultSimulationEngineFactory.java

@@ -31,7 +31,7 @@ import org.yakindu.sct.simulation.core.sexec.interpreter.IStatementInterpreter;
 import org.yakindu.sct.simulation.core.sexec.launch.ISCTLaunchParameters;
 import org.yakindu.sct.simulation.core.sruntime.ExecutionContext;
 import org.yakindu.sct.simulation.core.sruntime.SRuntimeFactory;
-
+import static org.yakindu.sct.model.stext.lib.StatechartAnnotations.*;
 import com.google.inject.Inject;
 import com.google.inject.Injector;
 
@@ -43,8 +43,7 @@ import com.google.inject.Injector;
 public class DefaultSimulationEngineFactory implements ISimulationEngineFactory {
 
 	private static final int DEFAULT_CYCLE_PERIOD = 200;
-	private static final String CYCLE_BASED_ANNOTATION = "CycleBased";
-	private static final String EVENT_DRIVEN_ANNOTATION = "EventDriven";
+	
 	@Inject
 	private Injector injector;
 	@Inject