Browse Source

Moved Event Direction and VariableDeclaration modifier to base types

Andreas Mülder 10 years ago
parent
commit
80efe23568
22 changed files with 97 additions and 1059 deletions
  1. 1 1
      plugins/org.yakindu.sct.generator.c/src/org/yakindu/sct/generator/c/Statemachine.xtend
  2. 57 61
      plugins/org.yakindu.sct.generator.cpp/src/org/yakindu/sct/generator/cpp/StatemachineHeader.xtend
  3. 2 2
      plugins/org.yakindu.sct.generator.java/src/org/yakindu/sct/generator/java/Statemachine.xtend
  4. 1 1
      plugins/org.yakindu.sct.generator.java/src/org/yakindu/sct/generator/java/StatemachineInterface.xtend
  5. 1 1
      plugins/org.yakindu.sct.model.sexec/src/org/yakindu/sct/model/sexec/extensions/SExecExtensions.xtend
  6. 2 35
      plugins/org.yakindu.sct.model.stext.edit/src/org/yakindu/sct/model/stext/stext/provider/EventDefinitionItemProvider.java
  7. 0 79
      plugins/org.yakindu.sct.model.stext.edit/src/org/yakindu/sct/model/stext/stext/provider/VariableDefinitionItemProvider.java
  8. 0 235
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/Direction.java
  9. 3 35
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/EventDefinition.java
  10. 2 1
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/LocalReaction.java
  11. 9 115
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/StextPackage.java
  12. 2 1
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/TypeAliasDefinition.java
  13. 0 81
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/VariableDefinition.java
  14. 2 123
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/EventDefinitionImpl.java
  15. 0 25
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextFactoryImpl.java
  16. 1 68
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextPackageImpl.java
  17. 0 176
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/VariableDefinitionImpl.java
  18. 5 2
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextAdapterFactory.java
  19. 4 2
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextSwitch.java
  20. 1 11
      plugins/org.yakindu.sct.model.stext/model/SText.ecore
  21. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/SText.xtext
  22. 3 3
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/validation/STextJavaValidator.java

+ 1 - 1
plugins/org.yakindu.sct.generator.c/src/org/yakindu/sct/generator/c/Statemachine.xtend

@@ -13,6 +13,7 @@ package org.yakindu.sct.generator.c
 import com.google.inject.Inject
 import org.eclipse.xtext.generator.IFileSystemAccess
 import org.yakindu.base.types.Declaration
+import org.yakindu.base.types.Direction
 import org.yakindu.sct.generator.core.types.ICodegenTypeSystemAccess
 import org.yakindu.sct.model.sexec.ExecutionFlow
 import org.yakindu.sct.model.sexec.TimeEvent
@@ -20,7 +21,6 @@ import org.yakindu.sct.model.sexec.naming.INamingService
 import org.yakindu.sct.model.sgen.GeneratorEntry
 import org.yakindu.sct.model.sgraph.Scope
 import org.yakindu.sct.model.sgraph.Statechart
-import org.yakindu.sct.model.stext.stext.Direction
 import org.yakindu.sct.model.stext.stext.EventDefinition
 import org.yakindu.sct.model.stext.stext.InterfaceScope
 import org.yakindu.sct.model.stext.stext.StatechartScope

+ 57 - 61
plugins/org.yakindu.sct.generator.cpp/src/org/yakindu/sct/generator/cpp/StatemachineHeader.xtend

@@ -14,6 +14,7 @@ import com.google.inject.Inject
 import java.util.List
 import org.eclipse.xtend2.lib.StringConcatenation
 import org.eclipse.xtext.generator.IFileSystemAccess
+import org.yakindu.base.types.Direction
 import org.yakindu.sct.generator.c.Statemachine
 import org.yakindu.sct.generator.core.types.ICodegenTypeSystemAccess
 import org.yakindu.sct.generator.cpp.features.GenmodelEntriesExtension
@@ -24,7 +25,6 @@ import org.yakindu.sct.model.sexec.naming.INamingService
 import org.yakindu.sct.model.sgen.GeneratorEntry
 import org.yakindu.sct.model.sgraph.Scope
 import org.yakindu.sct.model.sgraph.Statechart
-import org.yakindu.sct.model.stext.stext.Direction
 import org.yakindu.sct.model.stext.stext.EventDefinition
 import org.yakindu.sct.model.stext.stext.InterfaceScope
 import org.yakindu.sct.model.stext.stext.InternalScope
@@ -32,32 +32,32 @@ import org.yakindu.sct.model.stext.stext.StatechartScope
 import org.yakindu.sct.model.stext.stext.VariableDefinition
 
 class StatemachineHeader extends Statemachine {
-	
+
 	@Inject extension Naming
 	@Inject extension Navigation
 	@Inject extension ICodegenTypeSystemAccess
 	@Inject extension GenmodelEntriesExtension
 	@Inject extension INamingService
-	
+
 	protected GeneratorEntry entry
-	
+
 	def generateStatemachineHeader(ExecutionFlow flow, Statechart sc, IFileSystemAccess fsa, GeneratorEntry entry) {
 		this.entry = entry
-		fsa.generateFile(flow.module().h, flow.statemachineHContent(entry) )
+		fsa.generateFile(flow.module().h, flow.statemachineHContent(entry))
 	}
-	
-	override statemachineHContent(ExecutionFlow it,  GeneratorEntry entry) '''
+
+	override statemachineHContent(ExecutionFlow it, GeneratorEntry entry) '''
 		«entry.licenseText»
 		
 		#ifndef «module().define»_H_
 		#define «module().define»_H_
-
+		
 		#include "«typesModule.h»"
 		#include "«statemachineInterface.h»"
 		«IF timed»
 			#include "«timedStatemachineInterface.h»"
 		«ENDIF»
-
+		
 		/*! \file Header of the state machine '«name»'.
 		*/
 		
@@ -91,38 +91,37 @@ class StatemachineHeader extends Statemachine {
 		«ENDIF»
 		#endif /* «module().define»_H_ */
 	'''
-	
+
 	def protected getInterfaceExtensions(ExecutionFlow flow) {
 
 		var String interfaces = "";
 
 		if (flow.timed) {
-			interfaces = interfaces + "public " +timedStatemachineInterface+", "
+			interfaces = interfaces + "public " + timedStatemachineInterface + ", "
 		}
 
 		interfaces = interfaces + "public " + statemachineInterface
-		
+
 		return interfaces;
 	}
-	
+
 	def protected CharSequence createInlineOCB_Destructor(StatechartScope it) {
 		if (hasOperations) {
 			return '''inline «flow.module»::«interfaceOCBName»::~«interfaceOCBName»() {}'''
 		}
 		return ''''''
 	}
-	
+
 	def protected createPublicScope(Scope scope) {
 		switch scope {
 			InterfaceScope: scope.createPublicScope
 			InternalScope: scope.createPublicScope
 		}
 	}
-	
-	def protected createPublicScope(InterfaceScope scope)
-	'''
+
+	def protected createPublicScope(InterfaceScope scope) '''
 		«scope.createInterface»
-«««		«scope.createListenerInterface(entry)»
+		«««		«scope.createListenerInterface(entry)»
 		«scope.createOCBInterface»
 		
 		/*! Returns an instance of the interface class '«scope.interfaceName»'. */
@@ -130,19 +129,18 @@ class StatemachineHeader extends Statemachine {
 		
 		«IF scope.defaultInterface»
 			«FOR d : scope.declarations»
-			«d.functionPrototypes»
+				«d.functionPrototypes»
 			«ENDFOR»
 		«ENDIF»
 	'''
-	
+
 	def protected createPublicScope(InternalScope scope) {
 		'''
 			«scope.createOCBInterface»
 		'''
 	}
-	
-	def protected createInterface(StatechartScope scope)
-	'''
+
+	def protected createInterface(StatechartScope scope) '''
 		//! Inner class for «scope.simpleName» interface scope.
 		class «scope.interfaceName» {
 			
@@ -154,32 +152,32 @@ class StatemachineHeader extends Statemachine {
 			«entry.innerClassVisibility»:
 				friend class «scope.execution_flow.module()»;
 				«FOR d : scope.declarations»
-				 «d.structDeclaration»
+					«d.structDeclaration»
 				«ENDFOR»
 		};
 	'''
-	
+
 	def createOCBInterface(StatechartScope scope) {
 		'''
-		
-		«IF scope.hasOperations»
-			//! Inner class for «scope.simpleName» interface scope operation callbacks.
-			class «scope.interfaceOCBName» {
-				public:
-					«IF !entry.useStaticOPC»
-						virtual ~«scope.interfaceOCBName»() = 0;
-						
-					«ENDIF»
-					«FOR operation : scope.operations SEPARATOR StringConcatenation.DEFAULT_LINE_DELIMITER»
-						«IF entry.useStaticOPC»static«ELSE»virtual«ENDIF» «operation.signature»«IF !entry.useStaticOPC» = 0«ENDIF»;
-					«ENDFOR»
-			};
-			«IF !entry.useStaticOPC»
-				
-				/*! Set the working instance of the operation callback interface '«scope.interfaceOCBName»'. */
-				«scope.OCB_InterfaceSetterDeclaration(false)»;
+			
+			«IF scope.hasOperations»
+				//! Inner class for «scope.simpleName» interface scope operation callbacks.
+				class «scope.interfaceOCBName» {
+					public:
+						«IF !entry.useStaticOPC»
+							virtual ~«scope.interfaceOCBName»() = 0;
+							
+						«ENDIF»
+						«FOR operation : scope.operations SEPARATOR StringConcatenation.DEFAULT_LINE_DELIMITER»
+							«IF entry.useStaticOPC»static«ELSE»virtual«ENDIF» «operation.signature»«IF !entry.useStaticOPC» = 0«ENDIF»;
+						«ENDFOR»
+				};
+				«IF !entry.useStaticOPC»
+					
+					/*! Set the working instance of the operation callback interface '«scope.interfaceOCBName»'. */
+					«scope.OCB_InterfaceSetterDeclaration(false)»;
+				«ENDIF»
 			«ENDIF»
-		«ENDIF»
 		'''
 	}
 
@@ -187,7 +185,7 @@ class StatemachineHeader extends Statemachine {
 		//! the maximum number of orthogonal states defines the dimension of the state configuration vector.
 		static const sc_integer «orthogonalStatesConst» = «stateVector.size»;
 		«IF hasHistory»
-		//! dimension of the state configuration vector for history states
+			//! dimension of the state configuration vector for history states
 		static const sc_integer «historyStatesConst» = «historyVector.size»;«ENDIF»
 		
 		«IF timed»
@@ -205,7 +203,7 @@ class StatemachineHeader extends Statemachine {
 			«IF s.hasOperations && !entry.useStaticOPC»«s.interfaceOCBName»* «s.OCB_Instance»;«ENDIF»
 		«ENDFOR»
 	'''
-	
+
 	def protected publicFunctionPrototypes(ExecutionFlow it) '''
 		«IStatemachineFunctions»
 		
@@ -213,7 +211,7 @@ class StatemachineHeader extends Statemachine {
 			«timedStatemachineFunctions»
 		«ENDIF»
 	'''
-	
+
 	def protected IStatemachineFunctions() '''
 		void init();
 		
@@ -223,7 +221,7 @@ class StatemachineHeader extends Statemachine {
 		
 		void runCycle();
 	'''
-	
+
 	def timedStatemachineFunctions(ExecutionFlow it) '''
 		void setTimer(«timerInterface»* timer);
 		
@@ -231,7 +229,7 @@ class StatemachineHeader extends Statemachine {
 		
 		void «raiseTimeEventFctID»(sc_eventid event);
 	'''
-	
+
 	override dispatch functionPrototypes(EventDefinition it) '''
 		«IF direction == Direction::LOCAL»
 			/*! Raises the in event '«name»' that is defined in the «scope.scopeDescription». */ 
@@ -246,9 +244,9 @@ class StatemachineHeader extends Statemachine {
 				
 			«ENDIF»
 		«ELSEIF direction == Direction::IN»
-		/*! Raises the in event '«name»' that is defined in the «scope.scopeDescription». */ 
-		void «asRaiser»(«valueParams»);
-		
+			/*! Raises the in event '«name»' that is defined in the «scope.scopeDescription». */ 
+			void «asRaiser»(«valueParams»);
+			
 		«ELSE»
 			/*! Checks if the out event '«name»' that is defined in the «scope.scopeDescription» has been raised. */ 
 			sc_boolean «asRaised»();
@@ -264,18 +262,17 @@ class StatemachineHeader extends Statemachine {
 	override dispatch functionPrototypes(VariableDefinition it) '''
 		/*! Gets the value of the variable '«name»' that is defined in the «scope.scopeDescription». */ 
 		«type.targetLanguageName» «it.asGetter»();
-
-		«IF ! readonly »
+		
+		«IF ! readonly»
 			/*! Sets the value of the variable '«name»' that is defined in the «scope.scopeDescription». */ 
 			void «asSetter»(«type.targetLanguageName» value);
 			
 		«ENDIF»
 	'''
-	
+
 	/* ===================================================================================
 	 * Handling decralartion of function prototypes
 	 */
-	 
 	/** */
 	def prototypes(ExecutionFlow it) '''
 		// prototypes of all internal functions
@@ -291,19 +288,18 @@ class StatemachineHeader extends Statemachine {
 		void clearOutEvents();
 		
 	'''
-	
-	
+
 	def toPrototypes(List<Step> steps) '''
 		«FOR s : steps»
 			«s.functionPrototype»
 		«ENDFOR»
 	'''
-	
+
 	def dispatch functionPrototype(Check it) '''
 		sc_boolean «shortName»();
 	'''
-	
+
 	def dispatch functionPrototype(Step it) '''
 		void «shortName»();
-	'''	
-}
+	'''
+}

+ 2 - 2
plugins/org.yakindu.sct.generator.java/src/org/yakindu/sct/generator/java/Statemachine.xtend

@@ -12,17 +12,17 @@ package org.yakindu.sct.generator.java
 import com.google.inject.Inject
 import java.util.List
 import org.eclipse.xtext.generator.IFileSystemAccess
+import org.yakindu.base.types.Direction
+import org.yakindu.base.types.typesystem.GenericTypeSystem
 import org.yakindu.base.types.typesystem.ITypeSystem
 import org.yakindu.sct.generator.core.types.ICodegenTypeSystemAccess
 import org.yakindu.sct.model.sexec.Check
 import org.yakindu.sct.model.sexec.ExecutionFlow
 import org.yakindu.sct.model.sexec.Step
 import org.yakindu.sct.model.sgen.GeneratorEntry
-import org.yakindu.sct.model.stext.stext.Direction
 import org.yakindu.sct.model.stext.stext.EventDefinition
 import org.yakindu.sct.model.stext.stext.InterfaceScope
 import org.yakindu.sct.model.stext.stext.VariableDefinition
-import org.yakindu.base.types.typesystem.GenericTypeSystem
 
 class Statemachine {
 	

+ 1 - 1
plugins/org.yakindu.sct.generator.java/src/org/yakindu/sct/generator/java/StatemachineInterface.xtend

@@ -11,6 +11,7 @@ package org.yakindu.sct.generator.java
 
 import com.google.inject.Inject
 import org.eclipse.xtext.generator.IFileSystemAccess
+import org.yakindu.base.types.Direction
 import org.yakindu.base.types.Parameter
 import org.yakindu.base.types.typesystem.GenericTypeSystem
 import org.yakindu.base.types.typesystem.ITypeSystem
@@ -18,7 +19,6 @@ import org.yakindu.sct.generator.core.types.ICodegenTypeSystemAccess
 import org.yakindu.sct.model.sexec.ExecutionFlow
 import org.yakindu.sct.model.sgen.GeneratorEntry
 import org.yakindu.sct.model.sgraph.Scope
-import org.yakindu.sct.model.stext.stext.Direction
 import org.yakindu.sct.model.stext.stext.InterfaceScope
 import org.yakindu.sct.model.stext.stext.InternalScope
 import org.yakindu.sct.model.stext.stext.OperationDefinition

+ 1 - 1
plugins/org.yakindu.sct.model.sexec/src/org/yakindu/sct/model/sexec/extensions/SExecExtensions.xtend

@@ -17,6 +17,7 @@ import org.yakindu.base.expressions.expressions.ElementReferenceExpression
 import org.yakindu.base.expressions.expressions.Expression
 import org.yakindu.base.expressions.expressions.FeatureCall
 import org.yakindu.base.types.Declaration
+import org.yakindu.base.types.Direction
 import org.yakindu.base.types.Event
 import org.yakindu.sct.model.sexec.Check
 import org.yakindu.sct.model.sexec.ExecutionFlow
@@ -29,7 +30,6 @@ import org.yakindu.sct.model.sexec.Sequence
 import org.yakindu.sct.model.sexec.Step
 import org.yakindu.sct.model.sexec.TimeEvent
 import org.yakindu.sct.model.sgraph.Scope
-import org.yakindu.sct.model.stext.stext.Direction
 import org.yakindu.sct.model.stext.stext.EventDefinition
 import org.yakindu.sct.model.stext.stext.InterfaceScope
 import org.yakindu.sct.model.stext.stext.InternalScope

+ 2 - 35
plugins/org.yakindu.sct.model.stext.edit/src/org/yakindu/sct/model/stext/stext/provider/EventDefinitionItemProvider.java

@@ -9,12 +9,9 @@ import java.util.List;
 import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.util.ResourceLocator;
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
 import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.yakindu.base.types.provider.EventItemProvider;
 import org.yakindu.sct.model.stext.stext.EventDefinition;
-import org.yakindu.sct.model.stext.stext.StextPackage;
 
 /**
  * This is the item provider adapter for a {@link org.yakindu.sct.model.stext.stext.EventDefinition} object.
@@ -22,7 +19,7 @@ import org.yakindu.sct.model.stext.stext.StextPackage;
  * <!-- end-user-doc -->
  * @generated
  */
-public class EventDefinitionItemProvider extends org.yakindu.base.types.provider.EventItemProvider
+public class EventDefinitionItemProvider extends EventItemProvider
 {
   /**
 	 * This constructs an instance from a factory and a notifier.
@@ -47,34 +44,10 @@ public class EventDefinitionItemProvider extends org.yakindu.base.types.provider
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
-			addDirectionPropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
-  /**
-	 * This adds a property descriptor for the Direction feature.
-	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-	 * @generated
-	 */
-  protected void addDirectionPropertyDescriptor(Object object)
-  {
-		itemPropertyDescriptors.add
-			(createItemPropertyDescriptor
-				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-				 getResourceLocator(),
-				 getString("_UI_EventDefinition_direction_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_EventDefinition_direction_feature", "_UI_EventDefinition_type"),
-				 StextPackage.Literals.EVENT_DEFINITION__DIRECTION,
-				 true,
-				 false,
-				 false,
-				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-				 null,
-				 null));
-	}
-
   /**
 	 * This returns EventDefinition.gif.
 	 * <!-- begin-user-doc -->
@@ -114,12 +87,6 @@ public class EventDefinitionItemProvider extends org.yakindu.base.types.provider
   public void notifyChanged(Notification notification)
   {
 		updateChildren(notification);
-
-		switch (notification.getFeatureID(EventDefinition.class)) {
-			case StextPackage.EVENT_DEFINITION__DIRECTION:
-				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-				return;
-		}
 		super.notifyChanged(notification);
 	}
 

+ 0 - 79
plugins/org.yakindu.sct.model.stext.edit/src/org/yakindu/sct/model/stext/stext/provider/VariableDefinitionItemProvider.java

@@ -10,9 +10,7 @@ import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.util.ResourceLocator;
 import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
 import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
 import org.eclipse.emf.edit.provider.ViewerNotification;
 import org.yakindu.base.expressions.expressions.ExpressionsFactory;
 import org.yakindu.base.types.provider.PropertyItemProvider;
@@ -51,82 +49,10 @@ public class VariableDefinitionItemProvider extends PropertyItemProvider
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
-			addConstPropertyDescriptor(object);
-			addReadonlyPropertyDescriptor(object);
-			addExternalPropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
-  /**
-	 * This adds a property descriptor for the Const feature.
-	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-	 * @generated
-	 */
-  protected void addConstPropertyDescriptor(Object object)
-  {
-		itemPropertyDescriptors.add
-			(createItemPropertyDescriptor
-				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-				 getResourceLocator(),
-				 getString("_UI_VariableDefinition_const_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_VariableDefinition_const_feature", "_UI_VariableDefinition_type"),
-				 StextPackage.Literals.VARIABLE_DEFINITION__CONST,
-				 true,
-				 false,
-				 false,
-				 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
-				 null,
-				 null));
-	}
-
-  /**
-	 * This adds a property descriptor for the Readonly feature.
-	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-	 * @generated
-	 */
-  protected void addReadonlyPropertyDescriptor(Object object)
-  {
-		itemPropertyDescriptors.add
-			(createItemPropertyDescriptor
-				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-				 getResourceLocator(),
-				 getString("_UI_VariableDefinition_readonly_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_VariableDefinition_readonly_feature", "_UI_VariableDefinition_type"),
-				 StextPackage.Literals.VARIABLE_DEFINITION__READONLY,
-				 true,
-				 false,
-				 false,
-				 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
-				 null,
-				 null));
-	}
-
-  /**
-	 * This adds a property descriptor for the External feature.
-	 * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-	 * @generated
-	 */
-  protected void addExternalPropertyDescriptor(Object object)
-  {
-		itemPropertyDescriptors.add
-			(createItemPropertyDescriptor
-				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-				 getResourceLocator(),
-				 getString("_UI_VariableDefinition_external_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_VariableDefinition_external_feature", "_UI_VariableDefinition_type"),
-				 StextPackage.Literals.VARIABLE_DEFINITION__EXTERNAL,
-				 true,
-				 false,
-				 false,
-				 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
-				 null,
-				 null));
-	}
-
   /**
 	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
 	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
@@ -200,11 +126,6 @@ public class VariableDefinitionItemProvider extends PropertyItemProvider
 		updateChildren(notification);
 
 		switch (notification.getFeatureID(VariableDefinition.class)) {
-			case StextPackage.VARIABLE_DEFINITION__CONST:
-			case StextPackage.VARIABLE_DEFINITION__READONLY:
-			case StextPackage.VARIABLE_DEFINITION__EXTERNAL:
-				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-				return;
 			case StextPackage.VARIABLE_DEFINITION__INITIAL_VALUE:
 				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
 				return;

+ 0 - 235
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/Direction.java

@@ -1,235 +0,0 @@
-/**
- */
-package org.yakindu.sct.model.stext.stext;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.emf.common.util.Enumerator;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the literals of the enumeration '<em><b>Direction</b></em>',
- * and utility methods for working with them.
- * <!-- end-user-doc -->
- * @see org.yakindu.sct.model.stext.stext.StextPackage#getDirection()
- * @model
- * @generated
- */
-public enum Direction implements Enumerator {
-	/**
-	 * The '<em><b>LOCAL</b></em>' literal object.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #LOCAL_VALUE
-	 * @generated
-	 * @ordered
-	 */
-	LOCAL(0, "LOCAL", "local"),
-
-	/**
-	 * The '<em><b>IN</b></em>' literal object.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #IN_VALUE
-	 * @generated
-	 * @ordered
-	 */
-	IN(1, "IN", "in"),
-
-	/**
-	 * The '<em><b>OUT</b></em>' literal object.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #OUT_VALUE
-	 * @generated
-	 * @ordered
-	 */
-	OUT(2, "OUT", "out");
-
-	/**
-	 * The '<em><b>LOCAL</b></em>' literal value.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>LOCAL</b></em>' literal object isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @see #LOCAL
-	 * @model literal="local"
-	 * @generated
-	 * @ordered
-	 */
-	public static final int LOCAL_VALUE = 0;
-
-	/**
-	 * The '<em><b>IN</b></em>' literal value.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>IN</b></em>' literal object isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @see #IN
-	 * @model literal="in"
-	 * @generated
-	 * @ordered
-	 */
-	public static final int IN_VALUE = 1;
-
-	/**
-	 * The '<em><b>OUT</b></em>' literal value.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of '<em><b>OUT</b></em>' literal object isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @see #OUT
-	 * @model literal="out"
-	 * @generated
-	 * @ordered
-	 */
-	public static final int OUT_VALUE = 2;
-
-	/**
-	 * An array of all the '<em><b>Direction</b></em>' enumerators.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private static final Direction[] VALUES_ARRAY =
-		new Direction[] {
-			LOCAL,
-			IN,
-			OUT,
-		};
-
-	/**
-	 * A public read-only list of all the '<em><b>Direction</b></em>' enumerators.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static final List<Direction> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
-
-	/**
-	 * Returns the '<em><b>Direction</b></em>' literal with the specified literal value.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static Direction get(String literal) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			Direction result = VALUES_ARRAY[i];
-			if (result.toString().equals(literal)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Direction</b></em>' literal with the specified name.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static Direction getByName(String name) {
-		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-			Direction result = VALUES_ARRAY[i];
-			if (result.getName().equals(name)) {
-				return result;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the '<em><b>Direction</b></em>' literal with the specified integer value.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static Direction get(int value) {
-		switch (value) {
-			case LOCAL_VALUE: return LOCAL;
-			case IN_VALUE: return IN;
-			case OUT_VALUE: return OUT;
-		}
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private final int value;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private final String name;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private final String literal;
-
-	/**
-	 * Only this class can construct instances.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private Direction(int value, String name, String literal) {
-		this.value = value;
-		this.name = name;
-		this.literal = literal;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public int getValue() {
-	  return value;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getName() {
-	  return name;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getLiteral() {
-	  return literal;
-	}
-
-	/**
-	 * Returns the literal value of the enumerator, which is its string representation.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public String toString() {
-		return literal;
-	}
-	
-} //Direction

+ 3 - 35
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/EventDefinition.java

@@ -2,51 +2,19 @@
  */
 package org.yakindu.sct.model.stext.stext;
 
+import org.yakindu.base.types.Event;
+
 
 /**
  * <!-- begin-user-doc -->
  * A representation of the model object '<em><b>Event Definition</b></em>'.
  * <!-- end-user-doc -->
  *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDirection <em>Direction</em>}</li>
- * </ul>
- * </p>
  *
  * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition()
  * @model
  * @generated
  */
-public interface EventDefinition extends org.yakindu.base.types.Event {
-	/**
-	 * Returns the value of the '<em><b>Direction</b></em>' attribute.
-	 * The literals are from the enumeration {@link org.yakindu.sct.model.stext.stext.Direction}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Direction</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Direction</em>' attribute.
-	 * @see org.yakindu.sct.model.stext.stext.Direction
-	 * @see #setDirection(Direction)
-	 * @see org.yakindu.sct.model.stext.stext.StextPackage#getEventDefinition_Direction()
-	 * @model
-	 * @generated
-	 */
-	Direction getDirection();
-
-	/**
-	 * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDirection <em>Direction</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Direction</em>' attribute.
-	 * @see org.yakindu.sct.model.stext.stext.Direction
-	 * @see #getDirection()
-	 * @generated
-	 */
-	void setDirection(Direction value);
+public interface EventDefinition extends Event {
 
 } // EventDefinition

+ 2 - 1
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/LocalReaction.java

@@ -2,6 +2,7 @@
  */
 package org.yakindu.sct.model.stext.stext;
 
+import org.yakindu.base.types.Declaration;
 import org.yakindu.sct.model.sgraph.Reaction;
 
 /**
@@ -14,5 +15,5 @@ import org.yakindu.sct.model.sgraph.Reaction;
  * @model
  * @generated
  */
-public interface LocalReaction extends Reaction, org.yakindu.base.types.Declaration {
+public interface LocalReaction extends Reaction, Declaration {
 } // LocalReaction

+ 9 - 115
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/StextPackage.java

@@ -557,7 +557,7 @@ public interface StextPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int EVENT_DEFINITION__DIRECTION = TypesPackage.EVENT_FEATURE_COUNT + 0;
+	int EVENT_DEFINITION__DIRECTION = TypesPackage.EVENT__DIRECTION;
 
 	/**
 	 * The number of structural features of the '<em>Event Definition</em>' class.
@@ -566,7 +566,7 @@ public interface StextPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int EVENT_DEFINITION_FEATURE_COUNT = TypesPackage.EVENT_FEATURE_COUNT + 1;
+	int EVENT_DEFINITION_FEATURE_COUNT = TypesPackage.EVENT_FEATURE_COUNT + 0;
 
 	/**
 	 * The meta object id for the '{@link org.yakindu.sct.model.stext.stext.impl.VariableDefinitionImpl <em>Variable Definition</em>}' class.
@@ -612,7 +612,7 @@ public interface StextPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int VARIABLE_DEFINITION__CONST = TypesPackage.PROPERTY_FEATURE_COUNT + 0;
+	int VARIABLE_DEFINITION__CONST = TypesPackage.PROPERTY__CONST;
 
 	/**
 	 * The feature id for the '<em><b>Readonly</b></em>' attribute.
@@ -621,7 +621,7 @@ public interface StextPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int VARIABLE_DEFINITION__READONLY = TypesPackage.PROPERTY_FEATURE_COUNT + 1;
+	int VARIABLE_DEFINITION__READONLY = TypesPackage.PROPERTY__READONLY;
 
 	/**
 	 * The feature id for the '<em><b>External</b></em>' attribute.
@@ -630,7 +630,7 @@ public interface StextPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int VARIABLE_DEFINITION__EXTERNAL = TypesPackage.PROPERTY_FEATURE_COUNT + 2;
+	int VARIABLE_DEFINITION__EXTERNAL = TypesPackage.PROPERTY__EXTERNAL;
 
 	/**
 	 * The feature id for the '<em><b>Initial Value</b></em>' containment reference.
@@ -639,7 +639,7 @@ public interface StextPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int VARIABLE_DEFINITION__INITIAL_VALUE = TypesPackage.PROPERTY_FEATURE_COUNT + 3;
+	int VARIABLE_DEFINITION__INITIAL_VALUE = TypesPackage.PROPERTY_FEATURE_COUNT + 0;
 
 	/**
 	 * The number of structural features of the '<em>Variable Definition</em>' class.
@@ -648,7 +648,7 @@ public interface StextPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int VARIABLE_DEFINITION_FEATURE_COUNT = TypesPackage.PROPERTY_FEATURE_COUNT + 4;
+	int VARIABLE_DEFINITION_FEATURE_COUNT = TypesPackage.PROPERTY_FEATURE_COUNT + 1;
 
 	/**
 	 * The meta object id for the '{@link org.yakindu.sct.model.stext.stext.impl.OperationDefinitionImpl <em>Operation Definition</em>}' class.
@@ -1364,16 +1364,6 @@ public interface StextPackage extends EPackage {
 	 */
 	int ACTIVE_STATE_REFERENCE_EXPRESSION_FEATURE_COUNT = ExpressionsPackage.EXPRESSION_FEATURE_COUNT + 1;
 
-	/**
-	 * The meta object id for the '{@link org.yakindu.sct.model.stext.stext.Direction <em>Direction</em>}' enum.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.yakindu.sct.model.stext.stext.Direction
-	 * @see org.yakindu.sct.model.stext.stext.impl.StextPackageImpl#getDirection()
-	 * @generated
-	 */
-	int DIRECTION = 36;
-
 	/**
 	 * The meta object id for the '{@link org.yakindu.sct.model.stext.stext.TimeEventType <em>Time Event Type</em>}' enum.
 	 * <!-- begin-user-doc -->
@@ -1382,7 +1372,7 @@ public interface StextPackage extends EPackage {
 	 * @see org.yakindu.sct.model.stext.stext.impl.StextPackageImpl#getTimeEventType()
 	 * @generated
 	 */
-	int TIME_EVENT_TYPE = 37;
+	int TIME_EVENT_TYPE = 36;
 
 	/**
 	 * The meta object id for the '{@link org.yakindu.sct.model.stext.stext.TimeUnit <em>Time Unit</em>}' enum.
@@ -1392,7 +1382,7 @@ public interface StextPackage extends EPackage {
 	 * @see org.yakindu.sct.model.stext.stext.impl.StextPackageImpl#getTimeUnit()
 	 * @generated
 	 */
-	int TIME_UNIT = 38;
+	int TIME_UNIT = 37;
 
 
 	/**
@@ -1623,17 +1613,6 @@ public interface StextPackage extends EPackage {
 	 */
 	EClass getEventDefinition();
 
-	/**
-	 * Returns the meta object for the attribute '{@link org.yakindu.sct.model.stext.stext.EventDefinition#getDirection <em>Direction</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Direction</em>'.
-	 * @see org.yakindu.sct.model.stext.stext.EventDefinition#getDirection()
-	 * @see #getEventDefinition()
-	 * @generated
-	 */
-	EAttribute getEventDefinition_Direction();
-
 	/**
 	 * Returns the meta object for class '{@link org.yakindu.sct.model.stext.stext.VariableDefinition <em>Variable Definition</em>}'.
 	 * <!-- begin-user-doc -->
@@ -1644,39 +1623,6 @@ public interface StextPackage extends EPackage {
 	 */
 	EClass getVariableDefinition();
 
-	/**
-	 * Returns the meta object for the attribute '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isConst <em>Const</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Const</em>'.
-	 * @see org.yakindu.sct.model.stext.stext.VariableDefinition#isConst()
-	 * @see #getVariableDefinition()
-	 * @generated
-	 */
-	EAttribute getVariableDefinition_Const();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly <em>Readonly</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Readonly</em>'.
-	 * @see org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly()
-	 * @see #getVariableDefinition()
-	 * @generated
-	 */
-	EAttribute getVariableDefinition_Readonly();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal <em>External</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>External</em>'.
-	 * @see org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal()
-	 * @see #getVariableDefinition()
-	 * @generated
-	 */
-	EAttribute getVariableDefinition_External();
-
 	/**
 	 * Returns the meta object for the containment reference '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getInitialValue <em>Initial Value</em>}'.
 	 * <!-- begin-user-doc -->
@@ -2052,16 +1998,6 @@ public interface StextPackage extends EPackage {
 	 */
 	EReference getActiveStateReferenceExpression_Value();
 
-	/**
-	 * Returns the meta object for enum '{@link org.yakindu.sct.model.stext.stext.Direction <em>Direction</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for enum '<em>Direction</em>'.
-	 * @see org.yakindu.sct.model.stext.stext.Direction
-	 * @generated
-	 */
-	EEnum getDirection();
-
 	/**
 	 * Returns the meta object for enum '{@link org.yakindu.sct.model.stext.stext.TimeEventType <em>Time Event Type</em>}'.
 	 * <!-- begin-user-doc -->
@@ -2308,14 +2244,6 @@ public interface StextPackage extends EPackage {
 		 */
 		EClass EVENT_DEFINITION = eINSTANCE.getEventDefinition();
 
-		/**
-		 * The meta object literal for the '<em><b>Direction</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute EVENT_DEFINITION__DIRECTION = eINSTANCE.getEventDefinition_Direction();
-
 		/**
 		 * The meta object literal for the '{@link org.yakindu.sct.model.stext.stext.impl.VariableDefinitionImpl <em>Variable Definition</em>}' class.
 		 * <!-- begin-user-doc -->
@@ -2326,30 +2254,6 @@ public interface StextPackage extends EPackage {
 		 */
 		EClass VARIABLE_DEFINITION = eINSTANCE.getVariableDefinition();
 
-		/**
-		 * The meta object literal for the '<em><b>Const</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute VARIABLE_DEFINITION__CONST = eINSTANCE.getVariableDefinition_Const();
-
-		/**
-		 * The meta object literal for the '<em><b>Readonly</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute VARIABLE_DEFINITION__READONLY = eINSTANCE.getVariableDefinition_Readonly();
-
-		/**
-		 * The meta object literal for the '<em><b>External</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute VARIABLE_DEFINITION__EXTERNAL = eINSTANCE.getVariableDefinition_External();
-
 		/**
 		 * The meta object literal for the '<em><b>Initial Value</b></em>' containment reference feature.
 		 * <!-- begin-user-doc -->
@@ -2680,16 +2584,6 @@ public interface StextPackage extends EPackage {
 		 */
 		EReference ACTIVE_STATE_REFERENCE_EXPRESSION__VALUE = eINSTANCE.getActiveStateReferenceExpression_Value();
 
-		/**
-		 * The meta object literal for the '{@link org.yakindu.sct.model.stext.stext.Direction <em>Direction</em>}' enum.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.yakindu.sct.model.stext.stext.Direction
-		 * @see org.yakindu.sct.model.stext.stext.impl.StextPackageImpl#getDirection()
-		 * @generated
-		 */
-		EEnum DIRECTION = eINSTANCE.getDirection();
-
 		/**
 		 * The meta object literal for the '{@link org.yakindu.sct.model.stext.stext.TimeEventType <em>Time Event Type</em>}' enum.
 		 * <!-- begin-user-doc -->

+ 2 - 1
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/TypeAliasDefinition.java

@@ -2,6 +2,7 @@
  */
 package org.yakindu.sct.model.stext.stext;
 
+import org.yakindu.base.types.Declaration;
 import org.yakindu.base.types.TypeAlias;
 
 /**
@@ -14,5 +15,5 @@ import org.yakindu.base.types.TypeAlias;
  * @model
  * @generated
  */
-public interface TypeAliasDefinition extends TypeAlias, org.yakindu.base.types.Declaration {
+public interface TypeAliasDefinition extends TypeAlias, Declaration {
 } // TypeAliasDefinition

+ 0 - 81
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/VariableDefinition.java

@@ -13,9 +13,6 @@ import org.yakindu.base.types.Property;
  * <p>
  * The following features are supported:
  * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isConst <em>Const</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly <em>Readonly</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal <em>External</em>}</li>
  *   <li>{@link org.yakindu.sct.model.stext.stext.VariableDefinition#getInitialValue <em>Initial Value</em>}</li>
  * </ul>
  * </p>
@@ -25,84 +22,6 @@ import org.yakindu.base.types.Property;
  * @generated
  */
 public interface VariableDefinition extends Property {
-	/**
-	 * Returns the value of the '<em><b>Const</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Const</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Const</em>' attribute.
-	 * @see #setConst(boolean)
-	 * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_Const()
-	 * @model
-	 * @generated
-	 */
-	boolean isConst();
-
-	/**
-	 * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isConst <em>Const</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Const</em>' attribute.
-	 * @see #isConst()
-	 * @generated
-	 */
-	void setConst(boolean value);
-
-	/**
-	 * Returns the value of the '<em><b>Readonly</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Readonly</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Readonly</em>' attribute.
-	 * @see #setReadonly(boolean)
-	 * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_Readonly()
-	 * @model
-	 * @generated
-	 */
-	boolean isReadonly();
-
-	/**
-	 * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isReadonly <em>Readonly</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Readonly</em>' attribute.
-	 * @see #isReadonly()
-	 * @generated
-	 */
-	void setReadonly(boolean value);
-
-	/**
-	 * Returns the value of the '<em><b>External</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>External</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>External</em>' attribute.
-	 * @see #setExternal(boolean)
-	 * @see org.yakindu.sct.model.stext.stext.StextPackage#getVariableDefinition_External()
-	 * @model
-	 * @generated
-	 */
-	boolean isExternal();
-
-	/**
-	 * Sets the value of the '{@link org.yakindu.sct.model.stext.stext.VariableDefinition#isExternal <em>External</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>External</em>' attribute.
-	 * @see #isExternal()
-	 * @generated
-	 */
-	void setExternal(boolean value);
-
 	/**
 	 * Returns the value of the '<em><b>Initial Value</b></em>' containment reference.
 	 * <!-- begin-user-doc -->

+ 2 - 123
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/EventDefinitionImpl.java

@@ -2,10 +2,8 @@
  */
 package org.yakindu.sct.model.stext.stext.impl;
 
-import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.yakindu.sct.model.stext.stext.Direction;
+import org.yakindu.base.types.impl.EventImpl;
 import org.yakindu.sct.model.stext.stext.EventDefinition;
 import org.yakindu.sct.model.stext.stext.StextPackage;
 
@@ -14,35 +12,11 @@ import org.yakindu.sct.model.stext.stext.StextPackage;
  * An implementation of the model object '<em><b>Event Definition</b></em>'.
  * <!-- end-user-doc -->
  * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.EventDefinitionImpl#getDirection <em>Direction</em>}</li>
- * </ul>
  * </p>
  *
  * @generated
  */
-public class EventDefinitionImpl extends org.yakindu.base.types.impl.EventImpl implements EventDefinition {
-	/**
-	 * The default value of the '{@link #getDirection() <em>Direction</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getDirection()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final Direction DIRECTION_EDEFAULT = Direction.LOCAL;
-
-	/**
-	 * The cached value of the '{@link #getDirection() <em>Direction</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getDirection()
-	 * @generated
-	 * @ordered
-	 */
-	protected Direction direction = DIRECTION_EDEFAULT;
-
+public class EventDefinitionImpl extends EventImpl implements EventDefinition {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -62,99 +36,4 @@ public class EventDefinitionImpl extends org.yakindu.base.types.impl.EventImpl i
 		return StextPackage.Literals.EVENT_DEFINITION;
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Direction getDirection() {
-		return direction;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setDirection(Direction newDirection) {
-		Direction oldDirection = direction;
-		direction = newDirection == null ? DIRECTION_EDEFAULT : newDirection;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.EVENT_DEFINITION__DIRECTION, oldDirection, direction));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Object eGet(int featureID, boolean resolve, boolean coreType) {
-		switch (featureID) {
-			case StextPackage.EVENT_DEFINITION__DIRECTION:
-				return getDirection();
-		}
-		return super.eGet(featureID, resolve, coreType);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eSet(int featureID, Object newValue) {
-		switch (featureID) {
-			case StextPackage.EVENT_DEFINITION__DIRECTION:
-				setDirection((Direction)newValue);
-				return;
-		}
-		super.eSet(featureID, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eUnset(int featureID) {
-		switch (featureID) {
-			case StextPackage.EVENT_DEFINITION__DIRECTION:
-				setDirection(DIRECTION_EDEFAULT);
-				return;
-		}
-		super.eUnset(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public boolean eIsSet(int featureID) {
-		switch (featureID) {
-			case StextPackage.EVENT_DEFINITION__DIRECTION:
-				return direction != DIRECTION_EDEFAULT;
-		}
-		return super.eIsSet(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (direction: ");
-		result.append(direction);
-		result.append(')');
-		return result.toString();
-	}
-
 } //EventDefinitionImpl

+ 0 - 25
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextFactoryImpl.java

@@ -13,7 +13,6 @@ import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
 import org.yakindu.sct.model.stext.stext.DefRoot;
 import org.yakindu.sct.model.stext.stext.DefaultTrigger;
-import org.yakindu.sct.model.stext.stext.Direction;
 import org.yakindu.sct.model.stext.stext.EntryEvent;
 import org.yakindu.sct.model.stext.stext.EntryPointSpec;
 import org.yakindu.sct.model.stext.stext.EventDefinition;
@@ -143,8 +142,6 @@ public class StextFactoryImpl extends EFactoryImpl implements StextFactory {
 	@Override
 	public Object createFromString(EDataType eDataType, String initialValue) {
 		switch (eDataType.getClassifierID()) {
-			case StextPackage.DIRECTION:
-				return createDirectionFromString(eDataType, initialValue);
 			case StextPackage.TIME_EVENT_TYPE:
 				return createTimeEventTypeFromString(eDataType, initialValue);
 			case StextPackage.TIME_UNIT:
@@ -162,8 +159,6 @@ public class StextFactoryImpl extends EFactoryImpl implements StextFactory {
 	@Override
 	public String convertToString(EDataType eDataType, Object instanceValue) {
 		switch (eDataType.getClassifierID()) {
-			case StextPackage.DIRECTION:
-				return convertDirectionToString(eDataType, instanceValue);
 			case StextPackage.TIME_EVENT_TYPE:
 				return convertTimeEventTypeToString(eDataType, instanceValue);
 			case StextPackage.TIME_UNIT:
@@ -533,26 +528,6 @@ public class StextFactoryImpl extends EFactoryImpl implements StextFactory {
 		return activeStateReferenceExpression;
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Direction createDirectionFromString(EDataType eDataType, String initialValue) {
-		Direction result = Direction.get(initialValue);
-		if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
-		return result;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String convertDirectionToString(EDataType eDataType, Object instanceValue) {
-		return instanceValue == null ? null : instanceValue.toString();
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->

+ 1 - 68
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextPackageImpl.java

@@ -17,7 +17,6 @@ import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
 import org.yakindu.sct.model.stext.stext.DefRoot;
 import org.yakindu.sct.model.stext.stext.DefaultTrigger;
-import org.yakindu.sct.model.stext.stext.Direction;
 import org.yakindu.sct.model.stext.stext.EntryEvent;
 import org.yakindu.sct.model.stext.stext.EntryPointSpec;
 import org.yakindu.sct.model.stext.stext.EventDefinition;
@@ -313,13 +312,6 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 	 */
 	private EClass activeStateReferenceExpressionEClass = null;
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EEnum directionEEnum = null;
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -597,15 +589,6 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		return eventDefinitionEClass;
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getEventDefinition_Direction() {
-		return (EAttribute)eventDefinitionEClass.getEStructuralFeatures().get(0);
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -615,40 +598,13 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		return variableDefinitionEClass;
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getVariableDefinition_Const() {
-		return (EAttribute)variableDefinitionEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getVariableDefinition_Readonly() {
-		return (EAttribute)variableDefinitionEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getVariableDefinition_External() {
-		return (EAttribute)variableDefinitionEClass.getEStructuralFeatures().get(2);
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	public EReference getVariableDefinition_InitialValue() {
-		return (EReference)variableDefinitionEClass.getEStructuralFeatures().get(3);
+		return (EReference)variableDefinitionEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
@@ -966,15 +922,6 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		return (EReference)activeStateReferenceExpressionEClass.getEStructuralFeatures().get(0);
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EEnum getDirection() {
-		return directionEEnum;
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -1056,12 +1003,8 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		createEAttribute(importEClass, IMPORT__IMPORTED_NAMESPACE);
 
 		eventDefinitionEClass = createEClass(EVENT_DEFINITION);
-		createEAttribute(eventDefinitionEClass, EVENT_DEFINITION__DIRECTION);
 
 		variableDefinitionEClass = createEClass(VARIABLE_DEFINITION);
-		createEAttribute(variableDefinitionEClass, VARIABLE_DEFINITION__CONST);
-		createEAttribute(variableDefinitionEClass, VARIABLE_DEFINITION__READONLY);
-		createEAttribute(variableDefinitionEClass, VARIABLE_DEFINITION__EXTERNAL);
 		createEReference(variableDefinitionEClass, VARIABLE_DEFINITION__INITIAL_VALUE);
 
 		operationDefinitionEClass = createEClass(OPERATION_DEFINITION);
@@ -1121,7 +1064,6 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		createEReference(activeStateReferenceExpressionEClass, ACTIVE_STATE_REFERENCE_EXPRESSION__VALUE);
 
 		// Create enums
-		directionEEnum = createEEnum(DIRECTION);
 		timeEventTypeEEnum = createEEnum(TIME_EVENT_TYPE);
 		timeUnitEEnum = createEEnum(TIME_UNIT);
 	}
@@ -1229,12 +1171,8 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		initEAttribute(getImport_ImportedNamespace(), ecorePackage.getEString(), "importedNamespace", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		initEClass(eventDefinitionEClass, EventDefinition.class, "EventDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getEventDefinition_Direction(), this.getDirection(), "direction", null, 0, 1, EventDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		initEClass(variableDefinitionEClass, VariableDefinition.class, "VariableDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getVariableDefinition_Const(), ecorePackage.getEBoolean(), "const", null, 0, 1, VariableDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getVariableDefinition_Readonly(), ecorePackage.getEBoolean(), "readonly", null, 0, 1, VariableDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getVariableDefinition_External(), ecorePackage.getEBoolean(), "external", null, 0, 1, VariableDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEReference(getVariableDefinition_InitialValue(), theExpressionsPackage.getExpression(), null, "initialValue", null, 0, 1, VariableDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		initEClass(operationDefinitionEClass, OperationDefinition.class, "OperationDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -1294,11 +1232,6 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		initEReference(getActiveStateReferenceExpression_Value(), theSGraphPackage.getState(), null, "value", null, 0, 1, ActiveStateReferenceExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		// Initialize enums and add enum literals
-		initEEnum(directionEEnum, Direction.class, "Direction");
-		addEEnumLiteral(directionEEnum, Direction.LOCAL);
-		addEEnumLiteral(directionEEnum, Direction.IN);
-		addEEnumLiteral(directionEEnum, Direction.OUT);
-
 		initEEnum(timeEventTypeEEnum, TimeEventType.class, "TimeEventType");
 		addEEnumLiteral(timeEventTypeEEnum, TimeEventType.AFTER);
 		addEEnumLiteral(timeEventTypeEEnum, TimeEventType.EVERY);

+ 0 - 176
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/VariableDefinitionImpl.java

@@ -19,9 +19,6 @@ import org.yakindu.sct.model.stext.stext.VariableDefinition;
  * <p>
  * The following features are implemented:
  * <ul>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.VariableDefinitionImpl#isConst <em>Const</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.VariableDefinitionImpl#isReadonly <em>Readonly</em>}</li>
- *   <li>{@link org.yakindu.sct.model.stext.stext.impl.VariableDefinitionImpl#isExternal <em>External</em>}</li>
  *   <li>{@link org.yakindu.sct.model.stext.stext.impl.VariableDefinitionImpl#getInitialValue <em>Initial Value</em>}</li>
  * </ul>
  * </p>
@@ -29,66 +26,6 @@ import org.yakindu.sct.model.stext.stext.VariableDefinition;
  * @generated
  */
 public class VariableDefinitionImpl extends PropertyImpl implements VariableDefinition {
-	/**
-	 * The default value of the '{@link #isConst() <em>Const</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #isConst()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final boolean CONST_EDEFAULT = false;
-
-	/**
-	 * The cached value of the '{@link #isConst() <em>Const</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #isConst()
-	 * @generated
-	 * @ordered
-	 */
-	protected boolean const_ = CONST_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #isReadonly() <em>Readonly</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #isReadonly()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final boolean READONLY_EDEFAULT = false;
-
-	/**
-	 * The cached value of the '{@link #isReadonly() <em>Readonly</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #isReadonly()
-	 * @generated
-	 * @ordered
-	 */
-	protected boolean readonly = READONLY_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #isExternal() <em>External</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #isExternal()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final boolean EXTERNAL_EDEFAULT = false;
-
-	/**
-	 * The cached value of the '{@link #isExternal() <em>External</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #isExternal()
-	 * @generated
-	 * @ordered
-	 */
-	protected boolean external = EXTERNAL_EDEFAULT;
-
 	/**
 	 * The cached value of the '{@link #getInitialValue() <em>Initial Value</em>}' containment reference.
 	 * <!-- begin-user-doc -->
@@ -118,69 +55,6 @@ public class VariableDefinitionImpl extends PropertyImpl implements VariableDefi
 		return StextPackage.Literals.VARIABLE_DEFINITION;
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean isConst() {
-		return const_;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setConst(boolean newConst) {
-		boolean oldConst = const_;
-		const_ = newConst;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.VARIABLE_DEFINITION__CONST, oldConst, const_));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean isReadonly() {
-		return readonly;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setReadonly(boolean newReadonly) {
-		boolean oldReadonly = readonly;
-		readonly = newReadonly;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.VARIABLE_DEFINITION__READONLY, oldReadonly, readonly));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean isExternal() {
-		return external;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setExternal(boolean newExternal) {
-		boolean oldExternal = external;
-		external = newExternal;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, StextPackage.VARIABLE_DEFINITION__EXTERNAL, oldExternal, external));
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -246,12 +120,6 @@ public class VariableDefinitionImpl extends PropertyImpl implements VariableDefi
 	@Override
 	public Object eGet(int featureID, boolean resolve, boolean coreType) {
 		switch (featureID) {
-			case StextPackage.VARIABLE_DEFINITION__CONST:
-				return isConst();
-			case StextPackage.VARIABLE_DEFINITION__READONLY:
-				return isReadonly();
-			case StextPackage.VARIABLE_DEFINITION__EXTERNAL:
-				return isExternal();
 			case StextPackage.VARIABLE_DEFINITION__INITIAL_VALUE:
 				return getInitialValue();
 		}
@@ -266,15 +134,6 @@ public class VariableDefinitionImpl extends PropertyImpl implements VariableDefi
 	@Override
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
-			case StextPackage.VARIABLE_DEFINITION__CONST:
-				setConst((Boolean)newValue);
-				return;
-			case StextPackage.VARIABLE_DEFINITION__READONLY:
-				setReadonly((Boolean)newValue);
-				return;
-			case StextPackage.VARIABLE_DEFINITION__EXTERNAL:
-				setExternal((Boolean)newValue);
-				return;
 			case StextPackage.VARIABLE_DEFINITION__INITIAL_VALUE:
 				setInitialValue((Expression)newValue);
 				return;
@@ -290,15 +149,6 @@ public class VariableDefinitionImpl extends PropertyImpl implements VariableDefi
 	@Override
 	public void eUnset(int featureID) {
 		switch (featureID) {
-			case StextPackage.VARIABLE_DEFINITION__CONST:
-				setConst(CONST_EDEFAULT);
-				return;
-			case StextPackage.VARIABLE_DEFINITION__READONLY:
-				setReadonly(READONLY_EDEFAULT);
-				return;
-			case StextPackage.VARIABLE_DEFINITION__EXTERNAL:
-				setExternal(EXTERNAL_EDEFAULT);
-				return;
 			case StextPackage.VARIABLE_DEFINITION__INITIAL_VALUE:
 				setInitialValue((Expression)null);
 				return;
@@ -314,36 +164,10 @@ public class VariableDefinitionImpl extends PropertyImpl implements VariableDefi
 	@Override
 	public boolean eIsSet(int featureID) {
 		switch (featureID) {
-			case StextPackage.VARIABLE_DEFINITION__CONST:
-				return const_ != CONST_EDEFAULT;
-			case StextPackage.VARIABLE_DEFINITION__READONLY:
-				return readonly != READONLY_EDEFAULT;
-			case StextPackage.VARIABLE_DEFINITION__EXTERNAL:
-				return external != EXTERNAL_EDEFAULT;
 			case StextPackage.VARIABLE_DEFINITION__INITIAL_VALUE:
 				return initialValue != null;
 		}
 		return super.eIsSet(featureID);
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (const: ");
-		result.append(const_);
-		result.append(", readonly: ");
-		result.append(readonly);
-		result.append(", external: ");
-		result.append(external);
-		result.append(')');
-		return result.toString();
-	}
-
 } //VariableDefinitionImpl

+ 5 - 2
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextAdapterFactory.java

@@ -8,6 +8,8 @@ import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
 import org.eclipse.emf.ecore.EObject;
 import org.yakindu.base.base.NamedElement;
 import org.yakindu.base.expressions.expressions.Expression;
+import org.yakindu.base.types.Declaration;
+import org.yakindu.base.types.Event;
 import org.yakindu.base.types.Operation;
 import org.yakindu.base.types.PackageMember;
 import org.yakindu.base.types.Property;
@@ -20,6 +22,7 @@ import org.yakindu.sct.model.sgraph.ReactionProperty;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.ScopedElement;
 import org.yakindu.sct.model.sgraph.Trigger;
+import org.yakindu.sct.model.stext.stext.*;
 import org.yakindu.sct.model.stext.stext.ActiveStateReferenceExpression;
 import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
@@ -275,11 +278,11 @@ public class StextAdapterFactory extends AdapterFactoryImpl {
 				return createTypedElementAdapter();
 			}
 			@Override
-			public Adapter caseDeclaration(org.yakindu.base.types.Declaration object) {
+			public Adapter caseDeclaration(Declaration object) {
 				return createDeclarationAdapter();
 			}
 			@Override
-			public Adapter caseEvent(org.yakindu.base.types.Event object) {
+			public Adapter caseEvent(Event object) {
 				return createEventAdapter();
 			}
 			@Override

+ 4 - 2
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextSwitch.java

@@ -7,6 +7,8 @@ import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.util.Switch;
 import org.yakindu.base.base.NamedElement;
 import org.yakindu.base.expressions.expressions.Expression;
+import org.yakindu.base.types.Declaration;
+import org.yakindu.base.types.Event;
 import org.yakindu.base.types.Operation;
 import org.yakindu.base.types.PackageMember;
 import org.yakindu.base.types.Property;
@@ -999,7 +1001,7 @@ public class StextSwitch<T> extends Switch<T> {
 	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
 	 * @generated
 	 */
-	public T caseDeclaration(org.yakindu.base.types.Declaration object) {
+	public T caseDeclaration(Declaration object) {
 		return null;
 	}
 
@@ -1014,7 +1016,7 @@ public class StextSwitch<T> extends Switch<T> {
 	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
 	 * @generated
 	 */
-	public T caseEvent(org.yakindu.base.types.Event object) {
+	public T caseEvent(Event object) {
 		return null;
 	}
 

+ 1 - 11
plugins/org.yakindu.sct.model.stext/model/SText.ecore

@@ -37,18 +37,8 @@
   <eClassifiers xsi:type="ecore:EClass" name="Import">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="importedNamespace" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
   </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="EventDefinition" eSuperTypes="../../org.yakindu.base.types/model/types.ecore#//Event">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction" eType="#//Direction"/>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EEnum" name="Direction">
-    <eLiterals name="LOCAL" literal="local"/>
-    <eLiterals name="IN" value="1" literal="in"/>
-    <eLiterals name="OUT" value="2" literal="out"/>
-  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EventDefinition" eSuperTypes="../../org.yakindu.base.types/model/types.ecore#//Event"/>
   <eClassifiers xsi:type="ecore:EClass" name="VariableDefinition" eSuperTypes="../../org.yakindu.base.types/model/types.ecore#//Property">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="const" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="readonly" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="external" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="initialValue" eType="ecore:EClass ../../org.yakindu.base.expressions/model/Expressions.ecore#//Expression"
         containment="true"/>
   </eClassifiers>

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/SText.xtext

@@ -83,7 +83,7 @@ EventFeature returns types::Event:
 EventDefinition:
 	(direction=Direction)? 'event' name=XID (':' type=[types::Type|FQN])?;
 
-enum Direction:
+enum Direction returns types::Direction:
 	LOCAL='local' | IN='in' | OUT='out';
 
 VariableDeclaration returns types::Property:

+ 3 - 3
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/validation/STextJavaValidator.java

@@ -50,6 +50,7 @@ import org.yakindu.base.expressions.expressions.ExpressionsPackage;
 import org.yakindu.base.expressions.expressions.FeatureCall;
 import org.yakindu.base.expressions.validation.ExpressionsJavaValidator;
 import org.yakindu.base.types.Declaration;
+import org.yakindu.base.types.Direction;
 import org.yakindu.base.types.Event;
 import org.yakindu.base.types.Operation;
 import org.yakindu.base.types.Parameter;
@@ -73,7 +74,6 @@ import org.yakindu.sct.model.sgraph.validation.SCTResourceValidator;
 import org.yakindu.sct.model.sgraph.validation.SGraphJavaValidator;
 import org.yakindu.sct.model.stext.services.STextGrammarAccess;
 import org.yakindu.sct.model.stext.stext.DefaultTrigger;
-import org.yakindu.sct.model.stext.stext.Direction;
 import org.yakindu.sct.model.stext.stext.EntryEvent;
 import org.yakindu.sct.model.stext.stext.EntryPointSpec;
 import org.yakindu.sct.model.stext.stext.EventDefinition;
@@ -586,10 +586,10 @@ public class STextJavaValidator extends AbstractSTextJavaValidator implements ST
 	@Check(CheckType.FAST)
 	public void checkEventDefinition(EventDefinition event) {
 		if (event.eContainer() instanceof InterfaceScope && event.getDirection() == Direction.LOCAL) {
-			error(LOCAL_DECLARATIONS, StextPackage.Literals.EVENT_DEFINITION__DIRECTION);
+			error(LOCAL_DECLARATIONS, TypesPackage.Literals.EVENT__DIRECTION);
 		}
 		if (event.eContainer() instanceof InternalScope && event.getDirection() != Direction.LOCAL) {
-			error(IN_OUT_DECLARATIONS, StextPackage.Literals.EVENT_DEFINITION__DIRECTION);
+			error(IN_OUT_DECLARATIONS, TypesPackage.Literals.EVENT__DIRECTION);
 		}
 	}