| /******************************************************************************* |
| * Copyright (c) 2007, 2010 BMW Car IT, Technische Universitaet Muenchen, and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License 2.0 |
| * which accompanies this distribution, and is available at |
| * https://www.eclipse.org/legal/epl-2.0/ |
| * |
| * SPDX-License-Identifier: EPL-2.0 |
| * |
| * Contributors: |
| * BMW Car IT - Initial API and implementation |
| * Technische Universitaet Muenchen - Major refactoring and extension |
| *******************************************************************************/ |
| package org.eclipse.emf.edapt.spi.migration.impl; |
| |
| import java.util.Set; |
| |
| import org.eclipse.emf.common.util.DiagnosticChain; |
| import org.eclipse.emf.ecore.EAttribute; |
| import org.eclipse.emf.ecore.EClass; |
| import org.eclipse.emf.ecore.EDataType; |
| import org.eclipse.emf.ecore.EGenericType; |
| import org.eclipse.emf.ecore.EOperation; |
| import org.eclipse.emf.ecore.EPackage; |
| import org.eclipse.emf.ecore.EReference; |
| import org.eclipse.emf.ecore.ETypeParameter; |
| import org.eclipse.emf.ecore.EValidator; |
| import org.eclipse.emf.ecore.EcorePackage; |
| import org.eclipse.emf.ecore.impl.EPackageImpl; |
| import org.eclipse.emf.edapt.internal.migration.DiagnosticException; |
| import org.eclipse.emf.edapt.migration.MigrationException; |
| import org.eclipse.emf.edapt.spi.migration.AbstractResource; |
| import org.eclipse.emf.edapt.spi.migration.AttributeSlot; |
| import org.eclipse.emf.edapt.spi.migration.Instance; |
| import org.eclipse.emf.edapt.spi.migration.Metamodel; |
| import org.eclipse.emf.edapt.spi.migration.MetamodelResource; |
| import org.eclipse.emf.edapt.spi.migration.MigrationFactory; |
| import org.eclipse.emf.edapt.spi.migration.MigrationPackage; |
| import org.eclipse.emf.edapt.spi.migration.Model; |
| import org.eclipse.emf.edapt.spi.migration.ModelResource; |
| import org.eclipse.emf.edapt.spi.migration.ReferenceSlot; |
| import org.eclipse.emf.edapt.spi.migration.Repository; |
| import org.eclipse.emf.edapt.spi.migration.Slot; |
| import org.eclipse.emf.edapt.spi.migration.Type; |
| import org.eclipse.emf.edapt.spi.migration.util.MigrationValidator; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * An implementation of the model <b>Package</b>. |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| public class MigrationPackageImpl extends EPackageImpl implements MigrationPackage { |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass modelEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass metamodelEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass typeEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass instanceEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass slotEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass attributeSlotEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass referenceSlotEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass repositoryEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass modelResourceEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass abstractResourceEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EClass metamodelResourceEClass = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EDataType setEDataType = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EDataType diagnosticChainEDataType = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EDataType uriEDataType = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EDataType diagnosticExceptionEDataType = null; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| private EDataType migrationExceptionEDataType = 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.edapt.spi.migration.MigrationPackage#eNS_URI |
| * @see #init() |
| * @generated |
| */ |
| private MigrationPackageImpl() { |
| super(eNS_URI, MigrationFactory.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 MigrationPackage#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 MigrationPackage init() { |
| if (isInited) { |
| return (MigrationPackage) EPackage.Registry.INSTANCE.getEPackage(MigrationPackage.eNS_URI); |
| } |
| |
| // Obtain or create and register package |
| final MigrationPackageImpl theMigrationPackage = (MigrationPackageImpl) (EPackage.Registry.INSTANCE |
| .get(eNS_URI) instanceof MigrationPackageImpl ? EPackage.Registry.INSTANCE |
| .get(eNS_URI) : new MigrationPackageImpl()); |
| |
| isInited = true; |
| |
| // Initialize simple dependencies |
| EcorePackage.eINSTANCE.eClass(); |
| |
| // Create package meta-data objects |
| theMigrationPackage.createPackageContents(); |
| |
| // Initialize created meta-data |
| theMigrationPackage.initializePackageContents(); |
| |
| // Register package validator |
| EValidator.Registry.INSTANCE.put |
| (theMigrationPackage, |
| new EValidator.Descriptor() { |
| @Override |
| public EValidator getEValidator() { |
| return MigrationValidator.INSTANCE; |
| } |
| }); |
| |
| // Mark meta-data to indicate it can't be changed |
| theMigrationPackage.freeze(); |
| |
| // Update the registry and return the package |
| EPackage.Registry.INSTANCE.put(MigrationPackage.eNS_URI, theMigrationPackage); |
| return theMigrationPackage; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getModel() { |
| return modelEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getModel_Metamodel() { |
| return (EReference) modelEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getModel_Types() { |
| return (EReference) modelEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EAttribute getModel_Reflection() { |
| return (EAttribute) modelEClass.getEStructuralFeatures().get(2); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getModel_Resources() { |
| return (EReference) modelEClass.getEStructuralFeatures().get(3); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getModel_Repository() { |
| return (EReference) modelEClass.getEStructuralFeatures().get(4); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getMetamodel() { |
| return metamodelEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getMetamodel_Resources() { |
| return (EReference) metamodelEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getMetamodel_Repository() { |
| return (EReference) metamodelEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getMetamodel_DefaultPackage() { |
| return (EReference) metamodelEClass.getEStructuralFeatures().get(2); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getType() { |
| return typeEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getType_EClass() { |
| return (EReference) typeEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getType_Instances() { |
| return (EReference) typeEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getType_Model() { |
| return (EReference) typeEClass.getEStructuralFeatures().get(2); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getInstance() { |
| return instanceEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getInstance_Slots() { |
| return (EReference) instanceEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getInstance_Type() { |
| return (EReference) instanceEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getInstance_References() { |
| return (EReference) instanceEClass.getEStructuralFeatures().get(2); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EAttribute getInstance_Uri() { |
| return (EAttribute) instanceEClass.getEStructuralFeatures().get(3); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EAttribute getInstance_Uuid() { |
| return (EAttribute) instanceEClass.getEStructuralFeatures().get(4); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getSlot() { |
| return slotEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getSlot_Instance() { |
| return (EReference) slotEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getAttributeSlot() { |
| return attributeSlotEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getAttributeSlot_EAttribute() { |
| return (EReference) attributeSlotEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EAttribute getAttributeSlot_Values() { |
| return (EAttribute) attributeSlotEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getReferenceSlot() { |
| return referenceSlotEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getReferenceSlot_EReference() { |
| return (EReference) referenceSlotEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getReferenceSlot_Values() { |
| return (EReference) referenceSlotEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getRepository() { |
| return repositoryEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getRepository_Model() { |
| return (EReference) repositoryEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getRepository_Metamodel() { |
| return (EReference) repositoryEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getModelResource() { |
| return modelResourceEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getModelResource_RootInstances() { |
| return (EReference) modelResourceEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getModelResource_Model() { |
| return (EReference) modelResourceEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getAbstractResource() { |
| return abstractResourceEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EAttribute getAbstractResource_Uri() { |
| return (EAttribute) abstractResourceEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EAttribute getAbstractResource_Encoding() { |
| return (EAttribute) abstractResourceEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EClass getMetamodelResource() { |
| return metamodelResourceEClass; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getMetamodelResource_RootPackages() { |
| return (EReference) metamodelResourceEClass.getEStructuralFeatures().get(0); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EReference getMetamodelResource_Metamodel() { |
| return (EReference) metamodelResourceEClass.getEStructuralFeatures().get(1); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EDataType getSet() { |
| return setEDataType; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EDataType getDiagnosticChain() { |
| return diagnosticChainEDataType; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EDataType getURI() { |
| return uriEDataType; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EDataType getDiagnosticException() { |
| return diagnosticExceptionEDataType; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public EDataType getMigrationException() { |
| return migrationExceptionEDataType; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| @Override |
| public MigrationFactory getMigrationFactory() { |
| return (MigrationFactory) 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 |
| repositoryEClass = createEClass(REPOSITORY); |
| createEReference(repositoryEClass, REPOSITORY__MODEL); |
| createEReference(repositoryEClass, REPOSITORY__METAMODEL); |
| |
| modelEClass = createEClass(MODEL); |
| createEReference(modelEClass, MODEL__METAMODEL); |
| createEReference(modelEClass, MODEL__TYPES); |
| createEAttribute(modelEClass, MODEL__REFLECTION); |
| createEReference(modelEClass, MODEL__RESOURCES); |
| createEReference(modelEClass, MODEL__REPOSITORY); |
| |
| modelResourceEClass = createEClass(MODEL_RESOURCE); |
| createEReference(modelResourceEClass, MODEL_RESOURCE__ROOT_INSTANCES); |
| createEReference(modelResourceEClass, MODEL_RESOURCE__MODEL); |
| |
| typeEClass = createEClass(TYPE); |
| createEReference(typeEClass, TYPE__ECLASS); |
| createEReference(typeEClass, TYPE__INSTANCES); |
| createEReference(typeEClass, TYPE__MODEL); |
| |
| instanceEClass = createEClass(INSTANCE); |
| createEReference(instanceEClass, INSTANCE__SLOTS); |
| createEReference(instanceEClass, INSTANCE__TYPE); |
| createEReference(instanceEClass, INSTANCE__REFERENCES); |
| createEAttribute(instanceEClass, INSTANCE__URI); |
| createEAttribute(instanceEClass, INSTANCE__UUID); |
| |
| slotEClass = createEClass(SLOT); |
| createEReference(slotEClass, SLOT__INSTANCE); |
| |
| attributeSlotEClass = createEClass(ATTRIBUTE_SLOT); |
| createEReference(attributeSlotEClass, ATTRIBUTE_SLOT__EATTRIBUTE); |
| createEAttribute(attributeSlotEClass, ATTRIBUTE_SLOT__VALUES); |
| |
| referenceSlotEClass = createEClass(REFERENCE_SLOT); |
| createEReference(referenceSlotEClass, REFERENCE_SLOT__EREFERENCE); |
| createEReference(referenceSlotEClass, REFERENCE_SLOT__VALUES); |
| |
| metamodelEClass = createEClass(METAMODEL); |
| createEReference(metamodelEClass, METAMODEL__RESOURCES); |
| createEReference(metamodelEClass, METAMODEL__REPOSITORY); |
| createEReference(metamodelEClass, METAMODEL__DEFAULT_PACKAGE); |
| |
| metamodelResourceEClass = createEClass(METAMODEL_RESOURCE); |
| createEReference(metamodelResourceEClass, METAMODEL_RESOURCE__ROOT_PACKAGES); |
| createEReference(metamodelResourceEClass, METAMODEL_RESOURCE__METAMODEL); |
| |
| abstractResourceEClass = createEClass(ABSTRACT_RESOURCE); |
| createEAttribute(abstractResourceEClass, ABSTRACT_RESOURCE__URI); |
| createEAttribute(abstractResourceEClass, ABSTRACT_RESOURCE__ENCODING); |
| |
| // Create data types |
| setEDataType = createEDataType(SET); |
| diagnosticChainEDataType = createEDataType(DIAGNOSTIC_CHAIN); |
| uriEDataType = createEDataType(URI); |
| diagnosticExceptionEDataType = createEDataType(DIAGNOSTIC_EXCEPTION); |
| migrationExceptionEDataType = createEDataType(MIGRATION_EXCEPTION); |
| } |
| |
| /** |
| * <!-- 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 |
| addETypeParameter(setEDataType, "E"); //$NON-NLS-1$ |
| |
| // Set bounds for type parameters |
| |
| // Add supertypes to classes |
| modelResourceEClass.getESuperTypes().add(getAbstractResource()); |
| attributeSlotEClass.getESuperTypes().add(getSlot()); |
| referenceSlotEClass.getESuperTypes().add(getSlot()); |
| metamodelResourceEClass.getESuperTypes().add(getAbstractResource()); |
| |
| // Initialize classes and features; add operations and parameters |
| initEClass(repositoryEClass, Repository.class, "Repository", !IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ |
| IS_GENERATED_INSTANCE_CLASS); |
| initEReference(getRepository_Model(), getModel(), getModel_Repository(), "model", null, 1, 1, //$NON-NLS-1$ |
| Repository.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getRepository_Metamodel(), getMetamodel(), getMetamodel_Repository(), "metamodel", //$NON-NLS-1$ |
| null, 1, 1, Repository.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, |
| !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| initEClass(modelEClass, Model.class, "Model", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ |
| initEReference(getModel_Metamodel(), getMetamodel(), null, "metamodel", null, 0, 1, Model.class, //$NON-NLS-1$ |
| !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, |
| !IS_DERIVED, IS_ORDERED); |
| initEReference(getModel_Types(), getType(), getType_Model(), "types", null, 0, -1, Model.class, //$NON-NLS-1$ |
| !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, |
| !IS_DERIVED, IS_ORDERED); |
| initEAttribute(getModel_Reflection(), ecorePackage.getEBoolean(), "reflection", null, 1, 1, Model.class, //$NON-NLS-1$ |
| !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getModel_Resources(), getModelResource(), getModelResource_Model(), "resources", null, //$NON-NLS-1$ |
| 0, -1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getModel_Repository(), getRepository(), getRepository_Model(), "repository", null, 0, //$NON-NLS-1$ |
| 1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| EOperation op = addEOperation(modelEClass, getInstance(), "getAllInstances", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, getInstance(), "getInstances", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, getType(), "getType", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, null, "createExtentMap", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| EGenericType g1 = createEGenericType(ecorePackage.getEMap()); |
| EGenericType g2 = createEGenericType(ecorePackage.getEClass()); |
| g1.getETypeArguments().add(g2); |
| g2 = createEGenericType(getSet()); |
| g1.getETypeArguments().add(g2); |
| final EGenericType g3 = createEGenericType(getInstance()); |
| g2.getETypeArguments().add(g3); |
| initEOperation(op, g1); |
| |
| op = addEOperation(modelEClass, getInstance(), "newInstance", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, null, "delete", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, getInstance(), "instance", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, null, "validate", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEException(op, getMigrationException()); |
| |
| op = addEOperation(modelEClass, null, "checkConformance", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEException(op, getMigrationException()); |
| |
| op = addEOperation(modelEClass, null, "commit", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEException(op, getMigrationException()); |
| |
| op = addEOperation(modelEClass, getInstance(), "getAllInstances", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "className", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, getInstance(), "getInstances", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "className", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, getInstance(), "newInstance", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "className", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(modelEClass, getModelResource(), "newResource", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, getURI(), "uri", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| initEClass(modelResourceEClass, ModelResource.class, "ModelResource", !IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ |
| IS_GENERATED_INSTANCE_CLASS); |
| initEReference(getModelResource_RootInstances(), getInstance(), null, "rootInstances", null, 0, -1, //$NON-NLS-1$ |
| ModelResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getModelResource_Model(), getModel(), getModel_Resources(), "model", null, 0, 1, //$NON-NLS-1$ |
| ModelResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| initEClass(typeEClass, Type.class, "Type", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ |
| initEReference(getType_EClass(), ecorePackage.getEClass(), null, "eClass", null, 1, 1, Type.class, //$NON-NLS-1$ |
| !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, |
| !IS_DERIVED, IS_ORDERED); |
| initEReference(getType_Instances(), getInstance(), getInstance_Type(), "instances", null, 0, -1, //$NON-NLS-1$ |
| Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, |
| IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getType_Model(), getModel(), getModel_Types(), "model", null, 1, 1, Type.class, //$NON-NLS-1$ |
| !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, |
| !IS_DERIVED, IS_ORDERED); |
| |
| addEOperation(typeEClass, getInstance(), "newInstance", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| initEClass(instanceEClass, Instance.class, "Instance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ |
| initEReference(getInstance_Slots(), getSlot(), getSlot_Instance(), "slots", null, 0, -1, //$NON-NLS-1$ |
| Instance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getInstance_Type(), getType(), getType_Instances(), "type", null, 1, 1, //$NON-NLS-1$ |
| Instance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getInstance_References(), getReferenceSlot(), getReferenceSlot_Values(), "references", //$NON-NLS-1$ |
| null, 0, -1, Instance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEAttribute(getInstance_Uri(), getURI(), "uri", null, 0, 1, Instance.class, !IS_TRANSIENT, //$NON-NLS-1$ |
| !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEAttribute(getInstance_Uuid(), ecorePackage.getEString(), "uuid", null, 0, 1, Instance.class, //$NON-NLS-1$ |
| !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| op = addEOperation(instanceEClass, null, "get", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| ETypeParameter t1 = addETypeParameter(op, "V"); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| g1 = createEGenericType(t1); |
| initEOperation(op, g1); |
| |
| op = addEOperation(instanceEClass, null, "get", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| t1 = addETypeParameter(op, "V"); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "featureName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| g1 = createEGenericType(t1); |
| initEOperation(op, g1); |
| |
| op = addEOperation(instanceEClass, getInstance(), "getInverse", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEReference(), "reference", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, getSlot(), "getSlot", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| addEOperation(instanceEClass, ecorePackage.getEClass(), "getEClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "set", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "set", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "featureName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, ecorePackage.getEBoolean(), "isSet", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "unset", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| t1 = addETypeParameter(op, "V"); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| g1 = createEGenericType(t1); |
| initEOperation(op, g1); |
| |
| op = addEOperation(instanceEClass, null, "add", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEInt(), "index", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "add", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "remove", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "remove", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEStructuralFeature(), "feature", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEInt(), "index", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "migrate", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, ecorePackage.getEBoolean(), "instanceOf", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| addEOperation(instanceEClass, getInstance(), "getContainer", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| addEOperation(instanceEClass, getInstance(), "getContents", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| addEOperation(instanceEClass, null, "validate", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, ecorePackage.getEBoolean(), "validate", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, getDiagnosticChain(), "chain", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "evaluate", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| t1 = addETypeParameter(op, "V"); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "expression", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEException(op, getMigrationException()); |
| g1 = createEGenericType(t1); |
| initEOperation(op, g1); |
| |
| addEOperation(instanceEClass, ecorePackage.getEReference(), "getContainerReference", 0, 1, IS_UNIQUE, //$NON-NLS-1$ |
| IS_ORDERED); |
| |
| addEOperation(instanceEClass, getModelResource(), "getResource", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| addEOperation(instanceEClass, ecorePackage.getEBoolean(), "isProxy", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "migrate", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "className", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, getInstance(), "getInverse", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "referenceName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, getInstance(), "getLink", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "referenceName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, getInstance(), "getLinks", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "referenceName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, ecorePackage.getEBoolean(), "instanceOf", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "className", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "add", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "featureName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "remove", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "featureName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, null, "add", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "featureName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEInt(), "index", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEJavaObject(), "value", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, getInstance(), "getLink", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEReference(), "reference", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(instanceEClass, getInstance(), "getLinks", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEReference(), "reference", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| addEOperation(instanceEClass, getInstance(), "copy", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| initEClass(slotEClass, Slot.class, "Slot", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ |
| initEReference(getSlot_Instance(), getInstance(), getInstance_Slots(), "instance", null, 1, 1, //$NON-NLS-1$ |
| Slot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, |
| IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| addEOperation(slotEClass, ecorePackage.getEStructuralFeature(), "getEFeature", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| initEClass(attributeSlotEClass, AttributeSlot.class, "AttributeSlot", !IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ |
| IS_GENERATED_INSTANCE_CLASS); |
| initEReference(getAttributeSlot_EAttribute(), ecorePackage.getEAttribute(), null, "eAttribute", null, 1, 1, //$NON-NLS-1$ |
| AttributeSlot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEAttribute(getAttributeSlot_Values(), ecorePackage.getEJavaObject(), "values", null, 0, -1, //$NON-NLS-1$ |
| AttributeSlot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, |
| !IS_DERIVED, IS_ORDERED); |
| |
| initEClass(referenceSlotEClass, ReferenceSlot.class, "ReferenceSlot", !IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ |
| IS_GENERATED_INSTANCE_CLASS); |
| initEReference(getReferenceSlot_EReference(), ecorePackage.getEReference(), null, "eReference", null, 1, 1, //$NON-NLS-1$ |
| ReferenceSlot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getReferenceSlot_Values(), getInstance(), getInstance_References(), "values", null, 0, //$NON-NLS-1$ |
| -1, ReferenceSlot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| initEClass(metamodelEClass, Metamodel.class, "Metamodel", !IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ |
| IS_GENERATED_INSTANCE_CLASS); |
| initEReference(getMetamodel_Resources(), getMetamodelResource(), getMetamodelResource_Metamodel(), |
| "resources", null, 0, -1, Metamodel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, //$NON-NLS-1$ |
| !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getMetamodel_Repository(), getRepository(), getRepository_Metamodel(), "repository", //$NON-NLS-1$ |
| null, 0, 1, Metamodel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, |
| !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getMetamodel_DefaultPackage(), ecorePackage.getEPackage(), null, "defaultPackage", null, 0, 1, //$NON-NLS-1$ |
| Metamodel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEPackage(), "getEPackage", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEClassifier(), "getEClassifier", 0, 1, IS_UNIQUE, //$NON-NLS-1$ |
| IS_ORDERED); |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEStructuralFeature(), "getEFeature", 0, 1, IS_UNIQUE, //$NON-NLS-1$ |
| IS_ORDERED); |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEClass(), "getEClass", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEReference(), "getEReference", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEAttribute(), "getEAttribute", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEDataType(), "getEDataType", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEModelElement(), "getElement", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, null, "validate", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEException(op, getMigrationException()); |
| |
| addEOperation(metamodelEClass, ecorePackage.getEPackage(), "getEPackages", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, null, "setDefaultPackage", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "packageName", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEEnum(), "getEEnum", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEEnumLiteral(), "getEEnumLiteral", 0, 1, IS_UNIQUE, //$NON-NLS-1$ |
| IS_ORDERED); |
| addEParameter(op, ecorePackage.getEString(), "name", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, null, "delete", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEModelElement(), "metamodelElement", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, null, "getInverse", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| t1 = addETypeParameter(op, "V"); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEModelElement(), "metamodelElement", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEReference(), "reference", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| g1 = createEGenericType(t1); |
| initEOperation(op, g1); |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEClass(), "getESubTypes", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, ecorePackage.getEClass(), "getEAllSubTypes", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEClass(), "eClass", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| op = addEOperation(metamodelEClass, null, "setEOpposite", 0, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEReference(), "reference", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| addEParameter(op, ecorePackage.getEReference(), "opposite", 1, 1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$ |
| |
| initEClass(metamodelResourceEClass, MetamodelResource.class, "MetamodelResource", !IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ |
| IS_GENERATED_INSTANCE_CLASS); |
| initEReference(getMetamodelResource_RootPackages(), ecorePackage.getEPackage(), null, "rootPackages", null, 0, //$NON-NLS-1$ |
| -1, MetamodelResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, |
| !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEReference(getMetamodelResource_Metamodel(), getMetamodel(), getMetamodel_Resources(), |
| "metamodel", null, 0, 1, MetamodelResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, //$NON-NLS-1$ |
| !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| |
| initEClass(abstractResourceEClass, AbstractResource.class, "AbstractResource", IS_ABSTRACT, !IS_INTERFACE, //$NON-NLS-1$ |
| IS_GENERATED_INSTANCE_CLASS); |
| initEAttribute(getAbstractResource_Uri(), getURI(), "uri", null, 1, 1, AbstractResource.class, //$NON-NLS-1$ |
| !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
| initEAttribute(getAbstractResource_Encoding(), ecorePackage.getEString(), "encoding", null, 0, 1, //$NON-NLS-1$ |
| AbstractResource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, |
| !IS_DERIVED, IS_ORDERED); |
| |
| // Initialize data types |
| initEDataType(setEDataType, Set.class, "Set", !IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$ |
| initEDataType(diagnosticChainEDataType, DiagnosticChain.class, "DiagnosticChain", IS_SERIALIZABLE, //$NON-NLS-1$ |
| !IS_GENERATED_INSTANCE_CLASS); |
| initEDataType(uriEDataType, org.eclipse.emf.common.util.URI.class, "URI", IS_SERIALIZABLE, //$NON-NLS-1$ |
| !IS_GENERATED_INSTANCE_CLASS); |
| initEDataType(diagnosticExceptionEDataType, DiagnosticException.class, "DiagnosticException", IS_SERIALIZABLE, //$NON-NLS-1$ |
| !IS_GENERATED_INSTANCE_CLASS); |
| initEDataType(migrationExceptionEDataType, MigrationException.class, "MigrationException", !IS_SERIALIZABLE, //$NON-NLS-1$ |
| !IS_GENERATED_INSTANCE_CLASS); |
| |
| // Create resource |
| createResource(eNS_URI); |
| |
| // Create annotations |
| // http://www.eclipse.org/emf/2002/Ecore |
| createEcoreAnnotations(); |
| } |
| |
| /** |
| * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * |
| * @generated |
| */ |
| protected void createEcoreAnnotations() { |
| final String source = "http://www.eclipse.org/emf/2002/Ecore"; //$NON-NLS-1$ |
| addAnnotation(instanceEClass, |
| source, |
| new String[] { |
| "constraints", "validContainment validType" //$NON-NLS-1$ //$NON-NLS-2$ |
| }); |
| addAnnotation(slotEClass, |
| source, |
| new String[] { |
| "constraints", "validFeature validMultiplicity" //$NON-NLS-1$ //$NON-NLS-2$ |
| }); |
| addAnnotation(referenceSlotEClass, |
| source, |
| new String[] { |
| "constraints", "validType noDanglingReference validOpposite" //$NON-NLS-1$ //$NON-NLS-2$ |
| }); |
| } |
| |
| } // MigrationPackageImpl |