/** * Copyright (c) 2013 Eclipse contributors and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html */ package org.eclipse.emf.test.common.reification.impl; import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EGenericType; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.ETypeParameter; import org.eclipse.emf.ecore.impl.EPackageImpl; import org.eclipse.emf.test.common.reification.Bidirectional; import org.eclipse.emf.test.common.reification.BoundedGenericContainer; import org.eclipse.emf.test.common.reification.BoundedTListKeyValuePair; import org.eclipse.emf.test.common.reification.High; import org.eclipse.emf.test.common.reification.HighBoundedContainer; import org.eclipse.emf.test.common.reification.HighListKeyValuePair; import org.eclipse.emf.test.common.reification.IntegerListKeyValuePair; import org.eclipse.emf.test.common.reification.KeyValuePair; import org.eclipse.emf.test.common.reification.KeyValuePairContainer; import org.eclipse.emf.test.common.reification.Link; import org.eclipse.emf.test.common.reification.LinkItem; import org.eclipse.emf.test.common.reification.Low; import org.eclipse.emf.test.common.reification.Medium; import org.eclipse.emf.test.common.reification.MediumBidirectional; import org.eclipse.emf.test.common.reification.MediumLink; import org.eclipse.emf.test.common.reification.MediumUnboundedContainer; import org.eclipse.emf.test.common.reification.RawKeyValuePair; import org.eclipse.emf.test.common.reification.RawLink; import org.eclipse.emf.test.common.reification.RawUnboundedContainer; import org.eclipse.emf.test.common.reification.ReificationFactory; import org.eclipse.emf.test.common.reification.ReificationPackage; import org.eclipse.emf.test.common.reification.Root; import org.eclipse.emf.test.common.reification.StringListKeyValuePair; import org.eclipse.emf.test.common.reification.StringListKeyValuePairContainer; import org.eclipse.emf.test.common.reification.TListKeyValuePair; import org.eclipse.emf.test.common.reification.UnboundedGenericContainer; import org.eclipse.emf.test.common.reification.VeryHigh; import org.eclipse.emf.test.common.reification.VeryLow; /** * <!-- begin-user-doc --> * An implementation of the model <b>Package</b>. * <!-- end-user-doc --> * @generated */ public class ReificationPackageImpl extends EPackageImpl implements ReificationPackage { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass rootEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass veryLowEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass lowEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass mediumEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass highEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass veryHighEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass containerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass unboundedGenericContainerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass rawUnboundedContainerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass mediumUnboundedContainerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass boundedGenericContainerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass highBoundedContainerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass keyValuePairEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass rawKeyValuePairEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass stringListKeyValuePairEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass tListKeyValuePairEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass boundedTListKeyValuePairEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass highListKeyValuePairEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass integerListKeyValuePairEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass keyValuePairContainerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass stringListKeyValuePairContainerEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass bidirectionalEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass linkEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass rawLinkEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass linkItemEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass mediumBidirectionalEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass mediumLinkEClass = 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.eclipse.emf.test.common.reification.ReificationPackage#eNS_URI * @see #init() * @generated */ private ReificationPackageImpl() { super(eNS_URI, ReificationFactory.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 ReificationPackage#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 ReificationPackage init() { if (isInited) return (ReificationPackage)EPackage.Registry.INSTANCE.getEPackage(ReificationPackage.eNS_URI); // Obtain or create and register package ReificationPackageImpl theReificationPackage = (ReificationPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ReificationPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ReificationPackageImpl()); isInited = true; // Create package meta-data objects theReificationPackage.createPackageContents(); // Initialize created meta-data theReificationPackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theReificationPackage.freeze(); // Update the registry and return the package EPackage.Registry.INSTANCE.put(ReificationPackage.eNS_URI, theReificationPackage); return theReificationPackage; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getRoot() { return rootEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getRoot_Name() { return (EAttribute)rootEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_Container() { return (EReference)rootEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_UnboundedGenericContainerWithRawType() { return (EReference)rootEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_UnboundedGenericContainerWithWildcard() { return (EReference)rootEClass.getEStructuralFeatures().get(3); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_UnboundedGenericContainerWithSuper() { return (EReference)rootEClass.getEStructuralFeatures().get(4); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_UnboundedGenericContainerWithExtends() { return (EReference)rootEClass.getEStructuralFeatures().get(5); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_BoundedGenericContainerWithRawType() { return (EReference)rootEClass.getEStructuralFeatures().get(6); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_BoundedGenericContainerWithWildcard() { return (EReference)rootEClass.getEStructuralFeatures().get(7); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_BoundedGenericContainerWithSuper() { return (EReference)rootEClass.getEStructuralFeatures().get(8); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRoot_BoundedGenericContainerWithExtends() { return (EReference)rootEClass.getEStructuralFeatures().get(9); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getVeryLow() { return veryLowEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getLow() { return lowEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getMedium() { return mediumEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getHigh() { return highEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getVeryHigh() { return veryHighEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getContainer() { return containerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getUnboundedGenericContainer() { return unboundedGenericContainerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getUnboundedGenericContainer_Content() { return (EReference)unboundedGenericContainerEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getRawUnboundedContainer() { return rawUnboundedContainerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getMediumUnboundedContainer() { return mediumUnboundedContainerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBoundedGenericContainer() { return boundedGenericContainerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBoundedGenericContainer_Content() { return (EReference)boundedGenericContainerEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getHighBoundedContainer() { return highBoundedContainerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getKeyValuePair() { return keyValuePairEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getKeyValuePair_Key() { return (EAttribute)keyValuePairEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getKeyValuePair_Value() { return (EReference)keyValuePairEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getRawKeyValuePair() { return rawKeyValuePairEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getStringListKeyValuePair() { return stringListKeyValuePairEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTListKeyValuePair() { return tListKeyValuePairEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBoundedTListKeyValuePair() { return boundedTListKeyValuePairEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getHighListKeyValuePair() { return highListKeyValuePairEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getIntegerListKeyValuePair() { return integerListKeyValuePairEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getKeyValuePairContainer() { return keyValuePairContainerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getKeyValuePairContainer_KeyValuePairs() { return (EReference)keyValuePairContainerEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getStringListKeyValuePairContainer() { return stringListKeyValuePairContainerEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBidirectional() { return bidirectionalEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBidirectional_In() { return (EReference)bidirectionalEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBidirectional_Out() { return (EReference)bidirectionalEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBidirectional_Value() { return (EReference)bidirectionalEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBidirectional_Values() { return (EReference)bidirectionalEClass.getEStructuralFeatures().get(3); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getLink() { return linkEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getRawLink() { return rawLinkEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getLinkItem() { return linkItemEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getMediumBidirectional() { return mediumBidirectionalEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getMediumBidirectional_Contents() { return (EReference)mediumBidirectionalEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getMediumLink() { return mediumLinkEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public ReificationFactory getReificationFactory() { return (ReificationFactory)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 rootEClass = createEClass(ROOT); createEAttribute(rootEClass, ROOT__NAME); createEReference(rootEClass, ROOT__CONTAINER); createEReference(rootEClass, ROOT__UNBOUNDED_GENERIC_CONTAINER_WITH_RAW_TYPE); createEReference(rootEClass, ROOT__UNBOUNDED_GENERIC_CONTAINER_WITH_WILDCARD); createEReference(rootEClass, ROOT__UNBOUNDED_GENERIC_CONTAINER_WITH_SUPER); createEReference(rootEClass, ROOT__UNBOUNDED_GENERIC_CONTAINER_WITH_EXTENDS); createEReference(rootEClass, ROOT__BOUNDED_GENERIC_CONTAINER_WITH_RAW_TYPE); createEReference(rootEClass, ROOT__BOUNDED_GENERIC_CONTAINER_WITH_WILDCARD); createEReference(rootEClass, ROOT__BOUNDED_GENERIC_CONTAINER_WITH_SUPER); createEReference(rootEClass, ROOT__BOUNDED_GENERIC_CONTAINER_WITH_EXTENDS); veryLowEClass = createEClass(VERY_LOW); lowEClass = createEClass(LOW); mediumEClass = createEClass(MEDIUM); highEClass = createEClass(HIGH); veryHighEClass = createEClass(VERY_HIGH); containerEClass = createEClass(CONTAINER); unboundedGenericContainerEClass = createEClass(UNBOUNDED_GENERIC_CONTAINER); createEReference(unboundedGenericContainerEClass, UNBOUNDED_GENERIC_CONTAINER__CONTENT); rawUnboundedContainerEClass = createEClass(RAW_UNBOUNDED_CONTAINER); mediumUnboundedContainerEClass = createEClass(MEDIUM_UNBOUNDED_CONTAINER); boundedGenericContainerEClass = createEClass(BOUNDED_GENERIC_CONTAINER); createEReference(boundedGenericContainerEClass, BOUNDED_GENERIC_CONTAINER__CONTENT); highBoundedContainerEClass = createEClass(HIGH_BOUNDED_CONTAINER); keyValuePairEClass = createEClass(KEY_VALUE_PAIR); createEAttribute(keyValuePairEClass, KEY_VALUE_PAIR__KEY); createEReference(keyValuePairEClass, KEY_VALUE_PAIR__VALUE); rawKeyValuePairEClass = createEClass(RAW_KEY_VALUE_PAIR); stringListKeyValuePairEClass = createEClass(STRING_LIST_KEY_VALUE_PAIR); tListKeyValuePairEClass = createEClass(TLIST_KEY_VALUE_PAIR); boundedTListKeyValuePairEClass = createEClass(BOUNDED_TLIST_KEY_VALUE_PAIR); highListKeyValuePairEClass = createEClass(HIGH_LIST_KEY_VALUE_PAIR); integerListKeyValuePairEClass = createEClass(INTEGER_LIST_KEY_VALUE_PAIR); keyValuePairContainerEClass = createEClass(KEY_VALUE_PAIR_CONTAINER); createEReference(keyValuePairContainerEClass, KEY_VALUE_PAIR_CONTAINER__KEY_VALUE_PAIRS); stringListKeyValuePairContainerEClass = createEClass(STRING_LIST_KEY_VALUE_PAIR_CONTAINER); bidirectionalEClass = createEClass(BIDIRECTIONAL); createEReference(bidirectionalEClass, BIDIRECTIONAL__IN); createEReference(bidirectionalEClass, BIDIRECTIONAL__OUT); createEReference(bidirectionalEClass, BIDIRECTIONAL__VALUE); createEReference(bidirectionalEClass, BIDIRECTIONAL__VALUES); linkEClass = createEClass(LINK); rawLinkEClass = createEClass(RAW_LINK); linkItemEClass = createEClass(LINK_ITEM); mediumBidirectionalEClass = createEClass(MEDIUM_BIDIRECTIONAL); createEReference(mediumBidirectionalEClass, MEDIUM_BIDIRECTIONAL__CONTENTS); mediumLinkEClass = createEClass(MEDIUM_LINK); } /** * <!-- 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 ETypeParameter unboundedGenericContainerEClass_T = addETypeParameter(unboundedGenericContainerEClass, "T"); ETypeParameter boundedGenericContainerEClass_T = addETypeParameter(boundedGenericContainerEClass, "T"); ETypeParameter keyValuePairEClass_K = addETypeParameter(keyValuePairEClass, "K"); ETypeParameter keyValuePairEClass_V = addETypeParameter(keyValuePairEClass, "V"); ETypeParameter tListKeyValuePairEClass_T = addETypeParameter(tListKeyValuePairEClass, "T"); ETypeParameter boundedTListKeyValuePairEClass_T = addETypeParameter(boundedTListKeyValuePairEClass, "T"); ETypeParameter keyValuePairContainerEClass_K = addETypeParameter(keyValuePairContainerEClass, "K"); ETypeParameter keyValuePairContainerEClass_V = addETypeParameter(keyValuePairContainerEClass, "V"); ETypeParameter bidirectionalEClass_T = addETypeParameter(bidirectionalEClass, "T"); ETypeParameter mediumBidirectionalEClass_T = addETypeParameter(mediumBidirectionalEClass, "T"); // Set bounds for type parameters EGenericType g1 = createEGenericType(this.getMedium()); boundedGenericContainerEClass_T.getEBounds().add(g1); g1 = createEGenericType(ecorePackage.getEEList()); EGenericType g2 = createEGenericType(); g1.getETypeArguments().add(g2); keyValuePairEClass_K.getEBounds().add(g1); g1 = createEGenericType(this.getKeyValuePair()); g2 = createEGenericType(keyValuePairEClass_K); g1.getETypeArguments().add(g2); g2 = createEGenericType(keyValuePairEClass_V); g1.getETypeArguments().add(g2); keyValuePairEClass_V.getEBounds().add(g1); g1 = createEGenericType(this.getMedium()); boundedTListKeyValuePairEClass_T.getEBounds().add(g1); g1 = createEGenericType(ecorePackage.getEEList()); g2 = createEGenericType(); g1.getETypeArguments().add(g2); keyValuePairContainerEClass_K.getEBounds().add(g1); g1 = createEGenericType(this.getKeyValuePair()); g2 = createEGenericType(keyValuePairContainerEClass_K); g1.getETypeArguments().add(g2); g2 = createEGenericType(keyValuePairContainerEClass_V); g1.getETypeArguments().add(g2); keyValuePairContainerEClass_V.getEBounds().add(g1); g1 = createEGenericType(this.getBidirectional()); g2 = createEGenericType(bidirectionalEClass_T); g1.getETypeArguments().add(g2); bidirectionalEClass_T.getEBounds().add(g1); g1 = createEGenericType(this.getMediumBidirectional()); g2 = createEGenericType(mediumBidirectionalEClass_T); g1.getETypeArguments().add(g2); mediumBidirectionalEClass_T.getEBounds().add(g1); g1 = createEGenericType(this.getMedium()); mediumBidirectionalEClass_T.getEBounds().add(g1); // Add supertypes to classes lowEClass.getESuperTypes().add(this.getVeryLow()); mediumEClass.getESuperTypes().add(this.getLow()); highEClass.getESuperTypes().add(this.getMedium()); veryHighEClass.getESuperTypes().add(this.getHigh()); rawUnboundedContainerEClass.getESuperTypes().add(this.getUnboundedGenericContainer()); g1 = createEGenericType(this.getUnboundedGenericContainer()); g2 = createEGenericType(this.getMedium()); g1.getETypeArguments().add(g2); mediumUnboundedContainerEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getBoundedGenericContainer()); g2 = createEGenericType(this.getHigh()); g1.getETypeArguments().add(g2); highBoundedContainerEClass.getEGenericSuperTypes().add(g1); rawKeyValuePairEClass.getESuperTypes().add(this.getKeyValuePair()); g1 = createEGenericType(this.getKeyValuePair()); g2 = createEGenericType(ecorePackage.getEEList()); g1.getETypeArguments().add(g2); EGenericType g3 = createEGenericType(ecorePackage.getEString()); g2.getETypeArguments().add(g3); g2 = createEGenericType(this.getStringListKeyValuePair()); g1.getETypeArguments().add(g2); stringListKeyValuePairEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getKeyValuePair()); g2 = createEGenericType(ecorePackage.getEEList()); g1.getETypeArguments().add(g2); g3 = createEGenericType(tListKeyValuePairEClass_T); g2.getETypeArguments().add(g3); g2 = createEGenericType(this.getTListKeyValuePair()); g1.getETypeArguments().add(g2); g3 = createEGenericType(tListKeyValuePairEClass_T); g2.getETypeArguments().add(g3); tListKeyValuePairEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getTListKeyValuePair()); g2 = createEGenericType(boundedTListKeyValuePairEClass_T); g1.getETypeArguments().add(g2); boundedTListKeyValuePairEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getBoundedTListKeyValuePair()); g2 = createEGenericType(this.getHigh()); g1.getETypeArguments().add(g2); highListKeyValuePairEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getTListKeyValuePair()); g2 = createEGenericType(ecorePackage.getEIntegerObject()); g1.getETypeArguments().add(g2); integerListKeyValuePairEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getKeyValuePairContainer()); g2 = createEGenericType(ecorePackage.getEEList()); g1.getETypeArguments().add(g2); g3 = createEGenericType(ecorePackage.getEString()); g2.getETypeArguments().add(g3); g2 = createEGenericType(this.getStringListKeyValuePair()); g1.getETypeArguments().add(g2); stringListKeyValuePairContainerEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getBidirectional()); g2 = createEGenericType(this.getLink()); g1.getETypeArguments().add(g2); linkEClass.getEGenericSuperTypes().add(g1); rawLinkEClass.getESuperTypes().add(this.getBidirectional()); g1 = createEGenericType(this.getBidirectional()); g2 = createEGenericType(this.getLinkItem()); g1.getETypeArguments().add(g2); linkItemEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getMediumBidirectional()); g2 = createEGenericType(this.getMediumLink()); g1.getETypeArguments().add(g2); mediumLinkEClass.getEGenericSuperTypes().add(g1); g1 = createEGenericType(this.getMedium()); mediumLinkEClass.getEGenericSuperTypes().add(g1); // Initialize classes and features; add operations and parameters initEClass(rootEClass, Root.class, "Root", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getRoot_Name(), ecorePackage.getEString(), "name", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRoot_Container(), this.getContainer(), null, "container", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRoot_UnboundedGenericContainerWithRawType(), this.getUnboundedGenericContainer(), null, "unboundedGenericContainerWithRawType", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(this.getUnboundedGenericContainer()); g2 = createEGenericType(); g1.getETypeArguments().add(g2); initEReference(getRoot_UnboundedGenericContainerWithWildcard(), g1, null, "unboundedGenericContainerWithWildcard", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(this.getUnboundedGenericContainer()); g2 = createEGenericType(); g1.getETypeArguments().add(g2); g3 = createEGenericType(this.getMedium()); g2.setELowerBound(g3); initEReference(getRoot_UnboundedGenericContainerWithSuper(), g1, null, "unboundedGenericContainerWithSuper", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(this.getUnboundedGenericContainer()); g2 = createEGenericType(); g1.getETypeArguments().add(g2); g3 = createEGenericType(this.getMedium()); g2.setEUpperBound(g3); initEReference(getRoot_UnboundedGenericContainerWithExtends(), g1, null, "unboundedGenericContainerWithExtends", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRoot_BoundedGenericContainerWithRawType(), this.getBoundedGenericContainer(), null, "boundedGenericContainerWithRawType", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(this.getBoundedGenericContainer()); g2 = createEGenericType(); g1.getETypeArguments().add(g2); initEReference(getRoot_BoundedGenericContainerWithWildcard(), g1, null, "boundedGenericContainerWithWildcard", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(this.getBoundedGenericContainer()); g2 = createEGenericType(); g1.getETypeArguments().add(g2); g3 = createEGenericType(this.getMedium()); g2.setELowerBound(g3); initEReference(getRoot_BoundedGenericContainerWithSuper(), g1, null, "boundedGenericContainerWithSuper", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(this.getBoundedGenericContainer()); g2 = createEGenericType(); g1.getETypeArguments().add(g2); g3 = createEGenericType(this.getMedium()); g2.setEUpperBound(g3); initEReference(getRoot_BoundedGenericContainerWithExtends(), g1, null, "boundedGenericContainerWithExtends", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(veryLowEClass, VeryLow.class, "VeryLow", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(lowEClass, Low.class, "Low", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(mediumEClass, Medium.class, "Medium", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(highEClass, High.class, "High", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(veryHighEClass, VeryHigh.class, "VeryHigh", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(containerEClass, org.eclipse.emf.test.common.reification.Container.class, "Container", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(unboundedGenericContainerEClass, UnboundedGenericContainer.class, "UnboundedGenericContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(unboundedGenericContainerEClass_T); initEReference(getUnboundedGenericContainer_Content(), g1, null, "content", null, 0, 1, UnboundedGenericContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(rawUnboundedContainerEClass, RawUnboundedContainer.class, "RawUnboundedContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(mediumUnboundedContainerEClass, MediumUnboundedContainer.class, "MediumUnboundedContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(boundedGenericContainerEClass, BoundedGenericContainer.class, "BoundedGenericContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(boundedGenericContainerEClass_T); initEReference(getBoundedGenericContainer_Content(), g1, null, "content", null, 0, 1, BoundedGenericContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(highBoundedContainerEClass, HighBoundedContainer.class, "HighBoundedContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(keyValuePairEClass, KeyValuePair.class, "KeyValuePair", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(keyValuePairEClass_K); initEAttribute(getKeyValuePair_Key(), g1, "key", null, 0, 1, KeyValuePair.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(keyValuePairEClass_V); initEReference(getKeyValuePair_Value(), g1, null, "value", null, 0, 1, KeyValuePair.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(rawKeyValuePairEClass, RawKeyValuePair.class, "RawKeyValuePair", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(stringListKeyValuePairEClass, StringListKeyValuePair.class, "StringListKeyValuePair", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(tListKeyValuePairEClass, TListKeyValuePair.class, "TListKeyValuePair", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(boundedTListKeyValuePairEClass, BoundedTListKeyValuePair.class, "BoundedTListKeyValuePair", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(highListKeyValuePairEClass, HighListKeyValuePair.class, "HighListKeyValuePair", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(integerListKeyValuePairEClass, IntegerListKeyValuePair.class, "IntegerListKeyValuePair", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(keyValuePairContainerEClass, KeyValuePairContainer.class, "KeyValuePairContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(this.getKeyValuePair()); g2 = createEGenericType(keyValuePairContainerEClass_K); g1.getETypeArguments().add(g2); g2 = createEGenericType(keyValuePairContainerEClass_V); g1.getETypeArguments().add(g2); initEReference(getKeyValuePairContainer_KeyValuePairs(), g1, null, "keyValuePairs", null, 0, -1, KeyValuePairContainer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(stringListKeyValuePairContainerEClass, StringListKeyValuePairContainer.class, "StringListKeyValuePairContainer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(bidirectionalEClass, Bidirectional.class, "Bidirectional", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(bidirectionalEClass_T); initEReference(getBidirectional_In(), g1, this.getBidirectional_Out(), "in", null, 0, 1, Bidirectional.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(bidirectionalEClass_T); initEReference(getBidirectional_Out(), g1, this.getBidirectional_In(), "out", null, 0, 1, Bidirectional.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(bidirectionalEClass_T); initEReference(getBidirectional_Value(), g1, null, "value", null, 0, 1, Bidirectional.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); g1 = createEGenericType(bidirectionalEClass_T); initEReference(getBidirectional_Values(), g1, null, "values", null, 0, -1, Bidirectional.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(linkEClass, Link.class, "Link", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(rawLinkEClass, RawLink.class, "RawLink", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(linkItemEClass, LinkItem.class, "LinkItem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(mediumBidirectionalEClass, MediumBidirectional.class, "MediumBidirectional", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); g1 = createEGenericType(this.getMediumBidirectional()); g2 = createEGenericType(mediumBidirectionalEClass_T); g1.getETypeArguments().add(g2); initEReference(getMediumBidirectional_Contents(), g1, null, "contents", null, 0, -1, MediumBidirectional.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(mediumLinkEClass, MediumLink.class, "MediumLink", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); // Create resource createResource(eNS_URI); } } //ReificationPackageImpl