|
@@ -0,0 +1,554 @@
|
|
|
|
|
+/**
|
|
|
|
|
+ * <copyright>
|
|
|
|
|
+ * </copyright>
|
|
|
|
|
+ *
|
|
|
|
|
+ * $Id$
|
|
|
|
|
+ */
|
|
|
|
|
+package org.yakindu.sct.model.sexec.impl;
|
|
|
|
|
+
|
|
|
|
|
+import org.eclipse.emf.ecore.EAttribute;
|
|
|
|
|
+import org.eclipse.emf.ecore.EClass;
|
|
|
|
|
+import org.eclipse.emf.ecore.EPackage;
|
|
|
|
|
+import org.eclipse.emf.ecore.EReference;
|
|
|
|
|
+
|
|
|
|
|
+import org.eclipse.emf.ecore.impl.EPackageImpl;
|
|
|
|
|
+
|
|
|
|
|
+import org.yakindu.sct.model.sexec.Cycle;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.EnterState;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.Execution;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.ExecutionFlow;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.ExecutionState;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.ExitState;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.If;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.NamedElement;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.Sequence;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.SequenceExecution;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.SexecFactory;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.SexecPackage;
|
|
|
|
|
+import org.yakindu.sct.model.sexec.Step;
|
|
|
|
|
+
|
|
|
|
|
+import org.yakindu.sct.model.sgraph.SGraphPackage;
|
|
|
|
|
+
|
|
|
|
|
+import org.yakindu.sct.model.sgraph.core.CorePackage;
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * An implementation of the model <b>Package</b>.
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+public class SexecPackageImpl extends EPackageImpl implements SexecPackage {
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass executionFlowEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass executionStateEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass namedElementEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass cycleEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass stepEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass sequenceEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass ifEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass executionEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass enterStateEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass exitStateEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private EClass sequenceExecutionEClass = null;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * Creates an instance of the model <b>Package</b>, registered with
|
|
|
|
|
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
|
|
|
|
|
+ * package URI value.
|
|
|
|
|
+ * <p>Note: the correct way to create the package is via the static
|
|
|
|
|
+ * factory method {@link #init init()}, which also performs
|
|
|
|
|
+ * initialization of the package, or returns the registered package,
|
|
|
|
|
+ * if one already exists.
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @see org.eclipse.emf.ecore.EPackage.Registry
|
|
|
|
|
+ * @see org.yakindu.sct.model.sexec.SexecPackage#eNS_URI
|
|
|
|
|
+ * @see #init()
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private SexecPackageImpl() {
|
|
|
|
|
+ super(eNS_URI, SexecFactory.eINSTANCE);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private static boolean isInited = false;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
|
|
|
|
|
+ *
|
|
|
|
|
+ * <p>This method is used to initialize {@link SexecPackage#eINSTANCE} when that field is accessed.
|
|
|
|
|
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @see #eNS_URI
|
|
|
|
|
+ * @see #createPackageContents()
|
|
|
|
|
+ * @see #initializePackageContents()
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public static SexecPackage init() {
|
|
|
|
|
+ if (isInited) return (SexecPackage)EPackage.Registry.INSTANCE.getEPackage(SexecPackage.eNS_URI);
|
|
|
|
|
+
|
|
|
|
|
+ // Obtain or create and register package
|
|
|
|
|
+ SexecPackageImpl theSexecPackage = (SexecPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof SexecPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new SexecPackageImpl());
|
|
|
|
|
+
|
|
|
|
|
+ isInited = true;
|
|
|
|
|
+
|
|
|
|
|
+ // Initialize simple dependencies
|
|
|
|
|
+ SGraphPackage.eINSTANCE.eClass();
|
|
|
|
|
+
|
|
|
|
|
+ // Create package meta-data objects
|
|
|
|
|
+ theSexecPackage.createPackageContents();
|
|
|
|
|
+
|
|
|
|
|
+ // Initialize created meta-data
|
|
|
|
|
+ theSexecPackage.initializePackageContents();
|
|
|
|
|
+
|
|
|
|
|
+ // Mark meta-data to indicate it can't be changed
|
|
|
|
|
+ theSexecPackage.freeze();
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ // Update the registry and return the package
|
|
|
|
|
+ EPackage.Registry.INSTANCE.put(SexecPackage.eNS_URI, theSexecPackage);
|
|
|
|
|
+ return theSexecPackage;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getExecutionFlow() {
|
|
|
|
|
+ return executionFlowEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getExecutionFlow_States() {
|
|
|
|
|
+ return (EReference)executionFlowEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getExecutionFlow_Sequences() {
|
|
|
|
|
+ return (EReference)executionFlowEClass.getEStructuralFeatures().get(1);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getExecutionState() {
|
|
|
|
|
+ return executionStateEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EAttribute getExecutionState_SimpleName() {
|
|
|
|
|
+ return (EAttribute)executionStateEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getExecutionState_Cycle() {
|
|
|
|
|
+ return (EReference)executionStateEClass.getEStructuralFeatures().get(1);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getNamedElement() {
|
|
|
|
|
+ return namedElementEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EAttribute getNamedElement_Name() {
|
|
|
|
|
+ return (EAttribute)namedElementEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getCycle() {
|
|
|
|
|
+ return cycleEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getStep() {
|
|
|
|
|
+ return stepEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EAttribute getStep_Comment() {
|
|
|
|
|
+ return (EAttribute)stepEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getSequence() {
|
|
|
|
|
+ return sequenceEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getSequence_Steps() {
|
|
|
|
|
+ return (EReference)sequenceEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getIf() {
|
|
|
|
|
+ return ifEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getIf_Condition() {
|
|
|
|
|
+ return (EReference)ifEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getIf_Then() {
|
|
|
|
|
+ return (EReference)ifEClass.getEStructuralFeatures().get(1);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getIf_Else() {
|
|
|
|
|
+ return (EReference)ifEClass.getEStructuralFeatures().get(2);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getExecution() {
|
|
|
|
|
+ return executionEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getExecution_Statement() {
|
|
|
|
|
+ return (EReference)executionEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getEnterState() {
|
|
|
|
|
+ return enterStateEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getEnterState_State() {
|
|
|
|
|
+ return (EReference)enterStateEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getExitState() {
|
|
|
|
|
+ return exitStateEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getExitState_State() {
|
|
|
|
|
+ return (EReference)exitStateEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EClass getSequenceExecution() {
|
|
|
|
|
+ return sequenceExecutionEClass;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public EReference getSequenceExecution_Sequence() {
|
|
|
|
|
+ return (EReference)sequenceExecutionEClass.getEStructuralFeatures().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public SexecFactory getSexecFactory() {
|
|
|
|
|
+ return (SexecFactory)getEFactoryInstance();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private boolean isCreated = false;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * Creates the meta-model objects for the package. This method is
|
|
|
|
|
+ * guarded to have no affect on any invocation but its first.
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public void createPackageContents() {
|
|
|
|
|
+ if (isCreated) return;
|
|
|
|
|
+ isCreated = true;
|
|
|
|
|
+
|
|
|
|
|
+ // Create classes and their features
|
|
|
|
|
+ executionFlowEClass = createEClass(EXECUTION_FLOW);
|
|
|
|
|
+ createEReference(executionFlowEClass, EXECUTION_FLOW__STATES);
|
|
|
|
|
+ createEReference(executionFlowEClass, EXECUTION_FLOW__SEQUENCES);
|
|
|
|
|
+
|
|
|
|
|
+ executionStateEClass = createEClass(EXECUTION_STATE);
|
|
|
|
|
+ createEAttribute(executionStateEClass, EXECUTION_STATE__SIMPLE_NAME);
|
|
|
|
|
+ createEReference(executionStateEClass, EXECUTION_STATE__CYCLE);
|
|
|
|
|
+
|
|
|
|
|
+ namedElementEClass = createEClass(NAMED_ELEMENT);
|
|
|
|
|
+ createEAttribute(namedElementEClass, NAMED_ELEMENT__NAME);
|
|
|
|
|
+
|
|
|
|
|
+ cycleEClass = createEClass(CYCLE);
|
|
|
|
|
+
|
|
|
|
|
+ stepEClass = createEClass(STEP);
|
|
|
|
|
+ createEAttribute(stepEClass, STEP__COMMENT);
|
|
|
|
|
+
|
|
|
|
|
+ sequenceEClass = createEClass(SEQUENCE);
|
|
|
|
|
+ createEReference(sequenceEClass, SEQUENCE__STEPS);
|
|
|
|
|
+
|
|
|
|
|
+ ifEClass = createEClass(IF);
|
|
|
|
|
+ createEReference(ifEClass, IF__CONDITION);
|
|
|
|
|
+ createEReference(ifEClass, IF__THEN);
|
|
|
|
|
+ createEReference(ifEClass, IF__ELSE);
|
|
|
|
|
+
|
|
|
|
|
+ executionEClass = createEClass(EXECUTION);
|
|
|
|
|
+ createEReference(executionEClass, EXECUTION__STATEMENT);
|
|
|
|
|
+
|
|
|
|
|
+ enterStateEClass = createEClass(ENTER_STATE);
|
|
|
|
|
+ createEReference(enterStateEClass, ENTER_STATE__STATE);
|
|
|
|
|
+
|
|
|
|
|
+ exitStateEClass = createEClass(EXIT_STATE);
|
|
|
|
|
+ createEReference(exitStateEClass, EXIT_STATE__STATE);
|
|
|
|
|
+
|
|
|
|
|
+ sequenceExecutionEClass = createEClass(SEQUENCE_EXECUTION);
|
|
|
|
|
+ createEReference(sequenceExecutionEClass, SEQUENCE_EXECUTION__SEQUENCE);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ private boolean isInitialized = false;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * Complete the initialization of the package and its meta-model. This
|
|
|
|
|
+ * method is guarded to have no affect on any invocation but its first.
|
|
|
|
|
+ * <!-- begin-user-doc -->
|
|
|
|
|
+ * <!-- end-user-doc -->
|
|
|
|
|
+ * @generated
|
|
|
|
|
+ */
|
|
|
|
|
+ public void initializePackageContents() {
|
|
|
|
|
+ if (isInitialized) return;
|
|
|
|
|
+ isInitialized = true;
|
|
|
|
|
+
|
|
|
|
|
+ // Initialize package
|
|
|
|
|
+ setName(eNAME);
|
|
|
|
|
+ setNsPrefix(eNS_PREFIX);
|
|
|
|
|
+ setNsURI(eNS_URI);
|
|
|
|
|
+
|
|
|
|
|
+ // Obtain other dependent packages
|
|
|
|
|
+ CorePackage theCorePackage = (CorePackage)EPackage.Registry.INSTANCE.getEPackage(CorePackage.eNS_URI);
|
|
|
|
|
+
|
|
|
|
|
+ // Create type parameters
|
|
|
|
|
+
|
|
|
|
|
+ // Set bounds for type parameters
|
|
|
|
|
+
|
|
|
|
|
+ // Add supertypes to classes
|
|
|
|
|
+ executionStateEClass.getESuperTypes().add(this.getNamedElement());
|
|
|
|
|
+ cycleEClass.getESuperTypes().add(this.getSequence());
|
|
|
|
|
+ sequenceEClass.getESuperTypes().add(this.getStep());
|
|
|
|
|
+ sequenceEClass.getESuperTypes().add(this.getNamedElement());
|
|
|
|
|
+ ifEClass.getESuperTypes().add(this.getStep());
|
|
|
|
|
+ executionEClass.getESuperTypes().add(this.getStep());
|
|
|
|
|
+ enterStateEClass.getESuperTypes().add(this.getStep());
|
|
|
|
|
+ exitStateEClass.getESuperTypes().add(this.getStep());
|
|
|
|
|
+ sequenceExecutionEClass.getESuperTypes().add(this.getStep());
|
|
|
|
|
+
|
|
|
|
|
+ // Initialize classes and features; add operations and parameters
|
|
|
|
|
+ initEClass(executionFlowEClass, ExecutionFlow.class, "ExecutionFlow", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEReference(getExecutionFlow_States(), this.getExecutionState(), null, "states", null, 0, -1, ExecutionFlow.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+ initEReference(getExecutionFlow_Sequences(), this.getSequence(), null, "sequences", null, 0, -1, ExecutionFlow.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(executionStateEClass, ExecutionState.class, "ExecutionState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEAttribute(getExecutionState_SimpleName(), ecorePackage.getEString(), "simpleName", null, 0, 1, ExecutionState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+ initEReference(getExecutionState_Cycle(), this.getCycle(), null, "cycle", null, 0, 1, ExecutionState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(namedElementEClass, NamedElement.class, "NamedElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEAttribute(getNamedElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, NamedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(cycleEClass, Cycle.class, "Cycle", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(stepEClass, Step.class, "Step", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEAttribute(getStep_Comment(), ecorePackage.getEString(), "comment", null, 0, 1, Step.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(sequenceEClass, Sequence.class, "Sequence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEReference(getSequence_Steps(), this.getStep(), null, "steps", null, 0, -1, Sequence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(ifEClass, If.class, "If", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEReference(getIf_Condition(), theCorePackage.getStatement(), null, "condition", null, 0, 1, If.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+ initEReference(getIf_Then(), this.getStep(), null, "then", null, 0, 1, If.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+ initEReference(getIf_Else(), this.getStep(), null, "else", null, 0, 1, If.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(executionEClass, Execution.class, "Execution", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEReference(getExecution_Statement(), theCorePackage.getStatement(), null, "statement", null, 0, 1, Execution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(enterStateEClass, EnterState.class, "EnterState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEReference(getEnterState_State(), this.getExecutionState(), null, "state", null, 0, 1, EnterState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(exitStateEClass, ExitState.class, "ExitState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEReference(getExitState_State(), this.getExecutionState(), null, "state", null, 0, 1, ExitState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ initEClass(sequenceExecutionEClass, SequenceExecution.class, "SequenceExecution", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
|
|
|
|
+ initEReference(getSequenceExecution_Sequence(), this.getSequence(), null, "sequence", null, 0, 1, SequenceExecution.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
|
|
|
|
+
|
|
|
|
|
+ // Create resource
|
|
|
|
|
+ createResource(eNS_URI);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+} //SexecPackageImpl
|