/**
* <copyright>
* </copyright>
*
* $Id: FiltersPackageImpl.java,v 1.3 2011/11/14 14:00:00 sbouchet Exp $
*/
package org.eclipse.emf.eef.eefnr.filters.impl;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.impl.EPackageImpl;
import org.eclipse.emf.eef.eefnr.EefnrPackage;
import org.eclipse.emf.eef.eefnr.filters.AbstractReferenceOwnerSample;
import org.eclipse.emf.eef.eefnr.filters.AbstractReferenceTargetSample;
import org.eclipse.emf.eef.eefnr.filters.ConcreteReferenceOwnerSample;
import org.eclipse.emf.eef.eefnr.filters.ConcreteReferenceTargetSample1;
import org.eclipse.emf.eef.eefnr.filters.ConcreteReferenceTargetSample2;
import org.eclipse.emf.eef.eefnr.filters.ConcreteReferenceTargetSample3;
import org.eclipse.emf.eef.eefnr.filters.FiltersFactory;
import org.eclipse.emf.eef.eefnr.filters.FiltersPackage;
import org.eclipse.emf.eef.eefnr.impl.EefnrPackageImpl;
import org.eclipse.emf.eef.eefnr.interface_.InterfacePackage;
import org.eclipse.emf.eef.eefnr.interface_.impl.InterfacePackageImpl;
import org.eclipse.emf.eef.eefnr.naming.CustomNamingPackage;
import org.eclipse.emf.eef.eefnr.naming.impl.CustomNamingPackageImpl;
import org.eclipse.emf.eef.eefnr.navigation.NavigationPackage;
import org.eclipse.emf.eef.eefnr.navigation.impl.NavigationPackageImpl;
import org.eclipse.emf.eef.eefnr.references.ReferencesPackage;
import org.eclipse.emf.eef.eefnr.references.impl.ReferencesPackageImpl;
import org.eclipse.emf.eef.eefnrext.EefnrextPackage;
import org.eclipse.emf.eef.eefnrext.impl.EefnrextPackageImpl;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Package</b>.
* <!-- end-user-doc -->
* @generated
*/
public class FiltersPackageImpl extends EPackageImpl implements FiltersPackage {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass abstractReferenceOwnerSampleEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass abstractReferenceTargetSampleEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass concreteReferenceOwnerSampleEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass concreteReferenceTargetSample1EClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass concreteReferenceTargetSample2EClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass concreteReferenceTargetSample3EClass = 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.eef.eefnr.filters.FiltersPackage#eNS_URI
* @see #init()
* @generated
*/
private FiltersPackageImpl() {
super(eNS_URI, FiltersFactory.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 FiltersPackage#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 FiltersPackage init() {
if (isInited) return (FiltersPackage)EPackage.Registry.INSTANCE.getEPackage(FiltersPackage.eNS_URI);
// Obtain or create and register package
FiltersPackageImpl theFiltersPackage = (FiltersPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof FiltersPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new FiltersPackageImpl());
isInited = true;
// Obtain or create and register interdependencies
EefnrPackageImpl theEefnrPackage = (EefnrPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EefnrPackage.eNS_URI) instanceof EefnrPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EefnrPackage.eNS_URI) : EefnrPackage.eINSTANCE);
ReferencesPackageImpl theReferencesPackage = (ReferencesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ReferencesPackage.eNS_URI) instanceof ReferencesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ReferencesPackage.eNS_URI) : ReferencesPackage.eINSTANCE);
NavigationPackageImpl theNavigationPackage = (NavigationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NavigationPackage.eNS_URI) instanceof NavigationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NavigationPackage.eNS_URI) : NavigationPackage.eINSTANCE);
CustomNamingPackageImpl theCustomNamingPackage = (CustomNamingPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CustomNamingPackage.eNS_URI) instanceof CustomNamingPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CustomNamingPackage.eNS_URI) : CustomNamingPackage.eINSTANCE);
InterfacePackageImpl theInterfacePackage = (InterfacePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(InterfacePackage.eNS_URI) instanceof InterfacePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(InterfacePackage.eNS_URI) : InterfacePackage.eINSTANCE);
EefnrextPackageImpl theEefnrextPackage = (EefnrextPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EefnrextPackage.eNS_URI) instanceof EefnrextPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EefnrextPackage.eNS_URI) : EefnrextPackage.eINSTANCE);
// Create package meta-data objects
theFiltersPackage.createPackageContents();
theEefnrPackage.createPackageContents();
theReferencesPackage.createPackageContents();
theNavigationPackage.createPackageContents();
theCustomNamingPackage.createPackageContents();
theInterfacePackage.createPackageContents();
theEefnrextPackage.createPackageContents();
// Initialize created meta-data
theFiltersPackage.initializePackageContents();
theEefnrPackage.initializePackageContents();
theReferencesPackage.initializePackageContents();
theNavigationPackage.initializePackageContents();
theCustomNamingPackage.initializePackageContents();
theInterfacePackage.initializePackageContents();
theEefnrextPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theFiltersPackage.freeze();
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(FiltersPackage.eNS_URI, theFiltersPackage);
return theFiltersPackage;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getAbstractReferenceOwnerSample() {
return abstractReferenceOwnerSampleEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getAbstractReferenceOwnerSample_AbstractTarget() {
return (EReference)abstractReferenceOwnerSampleEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getAbstractReferenceTargetSample() {
return abstractReferenceTargetSampleEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getConcreteReferenceOwnerSample() {
return concreteReferenceOwnerSampleEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getConcreteReferenceOwnerSample_Target() {
return (EReference)concreteReferenceOwnerSampleEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getConcreteReferenceOwnerSample_StrictTyping() {
return (EReference)concreteReferenceOwnerSampleEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getConcreteReferenceOwnerSample_StrictTyping2() {
return (EReference)concreteReferenceOwnerSampleEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getConcreteReferenceOwnerSample_StrictTyping3() {
return (EReference)concreteReferenceOwnerSampleEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getConcreteReferenceTargetSample1() {
return concreteReferenceTargetSample1EClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getConcreteReferenceTargetSample2() {
return concreteReferenceTargetSample2EClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getConcreteReferenceTargetSample3() {
return concreteReferenceTargetSample3EClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public FiltersFactory getFiltersFactory() {
return (FiltersFactory)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
abstractReferenceOwnerSampleEClass = createEClass(ABSTRACT_REFERENCE_OWNER_SAMPLE);
createEReference(abstractReferenceOwnerSampleEClass, ABSTRACT_REFERENCE_OWNER_SAMPLE__ABSTRACT_TARGET);
abstractReferenceTargetSampleEClass = createEClass(ABSTRACT_REFERENCE_TARGET_SAMPLE);
concreteReferenceOwnerSampleEClass = createEClass(CONCRETE_REFERENCE_OWNER_SAMPLE);
createEReference(concreteReferenceOwnerSampleEClass, CONCRETE_REFERENCE_OWNER_SAMPLE__TARGET);
createEReference(concreteReferenceOwnerSampleEClass, CONCRETE_REFERENCE_OWNER_SAMPLE__STRICT_TYPING);
createEReference(concreteReferenceOwnerSampleEClass, CONCRETE_REFERENCE_OWNER_SAMPLE__STRICT_TYPING2);
createEReference(concreteReferenceOwnerSampleEClass, CONCRETE_REFERENCE_OWNER_SAMPLE__STRICT_TYPING3);
concreteReferenceTargetSample1EClass = createEClass(CONCRETE_REFERENCE_TARGET_SAMPLE1);
concreteReferenceTargetSample2EClass = createEClass(CONCRETE_REFERENCE_TARGET_SAMPLE2);
concreteReferenceTargetSample3EClass = createEClass(CONCRETE_REFERENCE_TARGET_SAMPLE3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isInitialized = false;
/**
* Complete the initialization of the package and its meta-model. This
* method is guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void initializePackageContents() {
if (isInitialized) return;
isInitialized = true;
// Initialize package
setName(eNAME);
setNsPrefix(eNS_PREFIX);
setNsURI(eNS_URI);
// Obtain other dependent packages
EefnrPackage theEefnrPackage = (EefnrPackage)EPackage.Registry.INSTANCE.getEPackage(EefnrPackage.eNS_URI);
// Create type parameters
// Set bounds for type parameters
// Add supertypes to classes
abstractReferenceOwnerSampleEClass.getESuperTypes().add(theEefnrPackage.getAbstractSample());
abstractReferenceTargetSampleEClass.getESuperTypes().add(theEefnrPackage.getAbstractSample());
concreteReferenceOwnerSampleEClass.getESuperTypes().add(this.getAbstractReferenceOwnerSample());
concreteReferenceTargetSample1EClass.getESuperTypes().add(this.getAbstractReferenceTargetSample());
concreteReferenceTargetSample2EClass.getESuperTypes().add(this.getAbstractReferenceTargetSample());
concreteReferenceTargetSample3EClass.getESuperTypes().add(this.getAbstractReferenceTargetSample());
// Initialize classes and features; add operations and parameters
initEClass(abstractReferenceOwnerSampleEClass, AbstractReferenceOwnerSample.class, "AbstractReferenceOwnerSample", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getAbstractReferenceOwnerSample_AbstractTarget(), this.getAbstractReferenceTargetSample(), null, "abstractTarget", null, 0, -1, AbstractReferenceOwnerSample.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(abstractReferenceTargetSampleEClass, AbstractReferenceTargetSample.class, "AbstractReferenceTargetSample", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(concreteReferenceOwnerSampleEClass, ConcreteReferenceOwnerSample.class, "ConcreteReferenceOwnerSample", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getConcreteReferenceOwnerSample_Target(), this.getConcreteReferenceTargetSample1(), null, "target", null, 0, -1, ConcreteReferenceOwnerSample.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEReference(getConcreteReferenceOwnerSample_StrictTyping(), this.getAbstractReferenceTargetSample(), null, "strictTyping", null, 0, -1, ConcreteReferenceOwnerSample.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getConcreteReferenceOwnerSample_StrictTyping2(), this.getAbstractReferenceTargetSample(), null, "strictTyping2", null, 0, -1, ConcreteReferenceOwnerSample.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getConcreteReferenceOwnerSample_StrictTyping3(), this.getAbstractReferenceTargetSample(), null, "strictTyping3", null, 0, -1, ConcreteReferenceOwnerSample.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(concreteReferenceTargetSample1EClass, ConcreteReferenceTargetSample1.class, "ConcreteReferenceTargetSample1", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(concreteReferenceTargetSample2EClass, ConcreteReferenceTargetSample2.class, "ConcreteReferenceTargetSample2", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(concreteReferenceTargetSample3EClass, ConcreteReferenceTargetSample3.class, "ConcreteReferenceTargetSample3", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
}
} //FiltersPackageImpl