/** */ package fr.obeo.intent.specification.impl; import fr.obeo.intent.specification.Action; import fr.obeo.intent.specification.AutomationLayer; import fr.obeo.intent.specification.Behaviour; import fr.obeo.intent.specification.Benefit; import fr.obeo.intent.specification.Capability; import fr.obeo.intent.specification.Context; import fr.obeo.intent.specification.Feature; import fr.obeo.intent.specification.ImplementationNote; import fr.obeo.intent.specification.NamedElement; import fr.obeo.intent.specification.Note; import fr.obeo.intent.specification.Parameter; import fr.obeo.intent.specification.Role; import fr.obeo.intent.specification.Scenario; import fr.obeo.intent.specification.ScenarioElement; import fr.obeo.intent.specification.Specification; import fr.obeo.intent.specification.SpecificationFactory; import fr.obeo.intent.specification.SpecificationPackage; import fr.obeo.intent.specification.Story; import fr.obeo.intent.specification.TestGenerationNote; import fr.obeo.intent.specification.TestNote; import fr.obeo.intent.specification.TestType; import fr.obeo.intent.specification.Value; import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EEnum; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.impl.EPackageImpl; /** * <!-- begin-user-doc --> * An implementation of the model <b>Package</b>. * <!-- end-user-doc --> * @generated */ public class SpecificationPackageImpl extends EPackageImpl implements SpecificationPackage { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass specificationEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass featureEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass roleEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass capabilityEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass benefitEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass storyEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass scenarioEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass contextEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass actionEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass behaviourEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass automationLayerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass namedElementEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass noteEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass implementationNoteEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass testNoteEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass scenarioElementEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass testGenerationNoteEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass valueEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass parameterEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EEnum testTypeEEnum = 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 fr.obeo.intent.specification.SpecificationPackage#eNS_URI * @see #init() * @generated */ private SpecificationPackageImpl() { super(eNS_URI, SpecificationFactory.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 SpecificationPackage#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 SpecificationPackage init() { if (isInited) return (SpecificationPackage)EPackage.Registry.INSTANCE.getEPackage(SpecificationPackage.eNS_URI); // Obtain or create and register package SpecificationPackageImpl theSpecificationPackage = (SpecificationPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof SpecificationPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new SpecificationPackageImpl()); isInited = true; // Create package meta-data objects theSpecificationPackage.createPackageContents(); // Initialize created meta-data theSpecificationPackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theSpecificationPackage.freeze(); // Update the registry and return the package EPackage.Registry.INSTANCE.put(SpecificationPackage.eNS_URI, theSpecificationPackage); return theSpecificationPackage; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSpecification() { return specificationEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSpecification_Features() { return (EReference)specificationEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSpecification_Roles() { return (EReference)specificationEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSpecification_AutomationLayer() { return (EReference)specificationEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSpecification_Stories() { return (EReference)specificationEClass.getEStructuralFeatures().get(3); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSpecification_Benefits() { return (EReference)specificationEClass.getEStructuralFeatures().get(4); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSpecification_Capabilities() { return (EReference)specificationEClass.getEStructuralFeatures().get(5); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getFeature() { return featureEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getFeature_RefFeatures() { return (EReference)featureEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getFeature_Stories() { return (EReference)featureEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getRole() { return roleEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getCapability() { return capabilityEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBenefit() { return benefitEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getStory() { return storyEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getStory_As() { return (EReference)storyEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getStory_SoThat() { return (EReference)storyEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getStory_Scenarios() { return (EReference)storyEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getStory_IWant() { return (EReference)storyEClass.getEStructuralFeatures().get(3); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getScenario() { return scenarioEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getScenario_Given() { return (EReference)scenarioEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getScenario_When() { return (EReference)scenarioEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getScenario_Then() { return (EReference)scenarioEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getScenario_Values() { return (EReference)scenarioEClass.getEStructuralFeatures().get(3); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getContext() { return contextEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getContext_Contexts() { return (EReference)contextEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getAction() { return actionEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBehaviour() { return behaviourEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getAutomationLayer() { return automationLayerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getAutomationLayer_Context() { return (EReference)automationLayerEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getAutomationLayer_Actions() { return (EReference)automationLayerEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getAutomationLayer_Behaviours() { return (EReference)automationLayerEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getAutomationLayer_BasePackage() { return (EAttribute)automationLayerEClass.getEStructuralFeatures().get(3); } /** * <!-- 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 EReference getNamedElement_Notes() { return (EReference)namedElementEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getNote() { return noteEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getNote_Description() { return (EAttribute)noteEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getImplementationNote() { return implementationNoteEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTestNote() { return testNoteEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getScenarioElement() { return scenarioElementEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getScenarioElement_Parameters() { return (EReference)scenarioElementEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTestGenerationNote() { return testGenerationNoteEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getTestGenerationNote_Type() { return (EAttribute)testGenerationNoteEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getValue() { return valueEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getValue_Value() { return (EAttribute)valueEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getValue_Parameter() { return (EReference)valueEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getParameter() { return parameterEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EEnum getTestType() { return testTypeEEnum; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public SpecificationFactory getSpecificationFactory() { return (SpecificationFactory)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 specificationEClass = createEClass(SPECIFICATION); createEReference(specificationEClass, SPECIFICATION__FEATURES); createEReference(specificationEClass, SPECIFICATION__ROLES); createEReference(specificationEClass, SPECIFICATION__AUTOMATION_LAYER); createEReference(specificationEClass, SPECIFICATION__STORIES); createEReference(specificationEClass, SPECIFICATION__BENEFITS); createEReference(specificationEClass, SPECIFICATION__CAPABILITIES); featureEClass = createEClass(FEATURE); createEReference(featureEClass, FEATURE__REF_FEATURES); createEReference(featureEClass, FEATURE__STORIES); roleEClass = createEClass(ROLE); capabilityEClass = createEClass(CAPABILITY); benefitEClass = createEClass(BENEFIT); storyEClass = createEClass(STORY); createEReference(storyEClass, STORY__AS); createEReference(storyEClass, STORY__SO_THAT); createEReference(storyEClass, STORY__SCENARIOS); createEReference(storyEClass, STORY__IWANT); scenarioEClass = createEClass(SCENARIO); createEReference(scenarioEClass, SCENARIO__GIVEN); createEReference(scenarioEClass, SCENARIO__WHEN); createEReference(scenarioEClass, SCENARIO__THEN); createEReference(scenarioEClass, SCENARIO__VALUES); contextEClass = createEClass(CONTEXT); createEReference(contextEClass, CONTEXT__CONTEXTS); actionEClass = createEClass(ACTION); behaviourEClass = createEClass(BEHAVIOUR); automationLayerEClass = createEClass(AUTOMATION_LAYER); createEReference(automationLayerEClass, AUTOMATION_LAYER__CONTEXT); createEReference(automationLayerEClass, AUTOMATION_LAYER__ACTIONS); createEReference(automationLayerEClass, AUTOMATION_LAYER__BEHAVIOURS); createEAttribute(automationLayerEClass, AUTOMATION_LAYER__BASE_PACKAGE); namedElementEClass = createEClass(NAMED_ELEMENT); createEAttribute(namedElementEClass, NAMED_ELEMENT__NAME); createEReference(namedElementEClass, NAMED_ELEMENT__NOTES); noteEClass = createEClass(NOTE); createEAttribute(noteEClass, NOTE__DESCRIPTION); implementationNoteEClass = createEClass(IMPLEMENTATION_NOTE); testNoteEClass = createEClass(TEST_NOTE); scenarioElementEClass = createEClass(SCENARIO_ELEMENT); createEReference(scenarioElementEClass, SCENARIO_ELEMENT__PARAMETERS); testGenerationNoteEClass = createEClass(TEST_GENERATION_NOTE); createEAttribute(testGenerationNoteEClass, TEST_GENERATION_NOTE__TYPE); valueEClass = createEClass(VALUE); createEAttribute(valueEClass, VALUE__VALUE); createEReference(valueEClass, VALUE__PARAMETER); parameterEClass = createEClass(PARAMETER); // Create enums testTypeEEnum = createEEnum(TEST_TYPE); } /** * <!-- 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); // Create type parameters // Set bounds for type parameters // Add supertypes to classes specificationEClass.getESuperTypes().add(this.getNamedElement()); featureEClass.getESuperTypes().add(this.getNamedElement()); roleEClass.getESuperTypes().add(this.getNamedElement()); capabilityEClass.getESuperTypes().add(this.getNamedElement()); benefitEClass.getESuperTypes().add(this.getNamedElement()); storyEClass.getESuperTypes().add(this.getNamedElement()); scenarioEClass.getESuperTypes().add(this.getNamedElement()); contextEClass.getESuperTypes().add(this.getScenarioElement()); actionEClass.getESuperTypes().add(this.getScenarioElement()); behaviourEClass.getESuperTypes().add(this.getScenarioElement()); implementationNoteEClass.getESuperTypes().add(this.getNote()); testNoteEClass.getESuperTypes().add(this.getNote()); scenarioElementEClass.getESuperTypes().add(this.getNamedElement()); testGenerationNoteEClass.getESuperTypes().add(this.getNote()); parameterEClass.getESuperTypes().add(this.getNamedElement()); // Initialize classes and features; add operations and parameters initEClass(specificationEClass, Specification.class, "Specification", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getSpecification_Features(), this.getFeature(), null, "features", null, 1, -1, Specification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getSpecification_Features().getEKeys().add(this.getNamedElement_Name()); initEReference(getSpecification_Roles(), this.getRole(), null, "roles", null, 1, -1, Specification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getSpecification_Roles().getEKeys().add(this.getNamedElement_Name()); initEReference(getSpecification_AutomationLayer(), this.getAutomationLayer(), null, "automationLayer", null, 0, 1, Specification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getSpecification_Stories(), this.getStory(), null, "stories", null, 0, -1, Specification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getSpecification_Stories().getEKeys().add(this.getNamedElement_Name()); initEReference(getSpecification_Benefits(), this.getBenefit(), null, "benefits", null, 0, -1, Specification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getSpecification_Benefits().getEKeys().add(this.getNamedElement_Name()); initEReference(getSpecification_Capabilities(), this.getCapability(), null, "capabilities", null, 0, -1, Specification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getSpecification_Capabilities().getEKeys().add(this.getNamedElement_Name()); initEClass(featureEClass, Feature.class, "Feature", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getFeature_RefFeatures(), this.getFeature(), null, "refFeatures", null, 0, -1, Feature.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getFeature_Stories(), this.getStory(), null, "stories", null, 0, -1, Feature.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(roleEClass, Role.class, "Role", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(capabilityEClass, Capability.class, "Capability", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(benefitEClass, Benefit.class, "Benefit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(storyEClass, Story.class, "Story", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getStory_As(), this.getRole(), null, "As", null, 1, 1, Story.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getStory_SoThat(), this.getBenefit(), null, "soThat", null, 1, 1, Story.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getStory_Scenarios(), this.getScenario(), null, "scenarios", null, 1, -1, Story.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getStory_Scenarios().getEKeys().add(this.getNamedElement_Name()); initEReference(getStory_IWant(), this.getCapability(), null, "iWant", null, 1, 1, Story.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(scenarioEClass, Scenario.class, "Scenario", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getScenario_Given(), this.getContext(), null, "given", null, 1, -1, Scenario.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getScenario_When(), this.getAction(), null, "when", null, 1, -1, Scenario.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getScenario_Then(), this.getBehaviour(), null, "then", null, 1, -1, Scenario.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getScenario_Values(), this.getValue(), null, "values", null, 0, -1, Scenario.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(contextEClass, Context.class, "Context", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getContext_Contexts(), this.getContext(), null, "contexts", null, 0, -1, Context.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(actionEClass, Action.class, "Action", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(behaviourEClass, Behaviour.class, "Behaviour", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(automationLayerEClass, AutomationLayer.class, "AutomationLayer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getAutomationLayer_Context(), this.getContext(), null, "context", null, 0, -1, AutomationLayer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getAutomationLayer_Context().getEKeys().add(this.getNamedElement_Name()); initEReference(getAutomationLayer_Actions(), this.getAction(), null, "actions", null, 0, -1, AutomationLayer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getAutomationLayer_Actions().getEKeys().add(this.getNamedElement_Name()); initEReference(getAutomationLayer_Behaviours(), this.getBehaviour(), null, "behaviours", null, 0, -1, AutomationLayer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); getAutomationLayer_Behaviours().getEKeys().add(this.getNamedElement_Name()); initEAttribute(getAutomationLayer_BasePackage(), ecorePackage.getEString(), "basePackage", null, 0, 1, AutomationLayer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, 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, 1, 1, NamedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getNamedElement_Notes(), this.getNote(), null, "notes", null, 0, -1, NamedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(noteEClass, Note.class, "Note", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getNote_Description(), ecorePackage.getEString(), "description", null, 0, 1, Note.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(implementationNoteEClass, ImplementationNote.class, "ImplementationNote", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(testNoteEClass, TestNote.class, "TestNote", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(scenarioElementEClass, ScenarioElement.class, "ScenarioElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getScenarioElement_Parameters(), this.getParameter(), null, "parameters", null, 0, -1, ScenarioElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(testGenerationNoteEClass, TestGenerationNote.class, "TestGenerationNote", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getTestGenerationNote_Type(), this.getTestType(), "type", null, 0, 1, TestGenerationNote.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(valueEClass, Value.class, "Value", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getValue_Value(), ecorePackage.getEString(), "value", null, 0, 1, Value.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getValue_Parameter(), this.getParameter(), null, "parameter", null, 1, 1, Value.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); // Initialize enums and add enum literals initEEnum(testTypeEEnum, TestType.class, "TestType"); addEEnumLiteral(testTypeEEnum, TestType.MANUAL); addEEnumLiteral(testTypeEEnum, TestType.PLUGIN); addEEnumLiteral(testTypeEEnum, TestType.UI); addEEnumLiteral(testTypeEEnum, TestType.UNIT); // Create resource createResource(eNS_URI); } } //SpecificationPackageImpl