/**
   * 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
    BasicPackageImpl theBasicPackage =
        (BasicPackageImpl) EPackage.Registry.INSTANCE.getEPackage(BasicPackageImpl.eNS_URI);
    ApplicationPackageImpl theApplicationPackage =
        (ApplicationPackageImpl)
            EPackage.Registry.INSTANCE.getEPackage(ApplicationPackageImpl.eNS_URI);
    PreferencesPackage thePreferencesPackage =
        (PreferencesPackage) EPackage.Registry.INSTANCE.getEPackage(PreferencesPackage.eNS_URI);

    // Create type parameters

    // Set bounds for type parameters

    // Add supertypes to classes
    editorPartDescriptorEClass.getESuperTypes().add(theBasicPackage.getPartDescriptor());
    vaaclipseApplicationEClass.getESuperTypes().add(theApplicationPackage.getApplication());

    // Initialize classes and features; add operations and parameters
    initEClass(
        editorPartDescriptorEClass,
        EditorPartDescriptor.class,
        "EditorPartDescriptor",
        !IS_ABSTRACT,
        !IS_INTERFACE,
        IS_GENERATED_INSTANCE_CLASS);
    initEAttribute(
        getEditorPartDescriptor_UriFilter(),
        ecorePackage.getEString(),
        "uriFilter",
        null,
        0,
        1,
        EditorPartDescriptor.class,
        !IS_TRANSIENT,
        !IS_VOLATILE,
        IS_CHANGEABLE,
        !IS_UNSETTABLE,
        !IS_ID,
        IS_UNIQUE,
        !IS_DERIVED,
        IS_ORDERED);
    initEAttribute(
        getEditorPartDescriptor_PartAddingLogicUri(),
        ecorePackage.getEString(),
        "partAddingLogicUri",
        "bundleclass://org.semanticsoft.e4extension/org.semanticsoft.e4extension.shared.DefaultPartAddingLogic",
        0,
        1,
        EditorPartDescriptor.class,
        !IS_TRANSIENT,
        !IS_VOLATILE,
        IS_CHANGEABLE,
        !IS_UNSETTABLE,
        !IS_ID,
        IS_UNIQUE,
        !IS_DERIVED,
        IS_ORDERED);

    initEClass(
        vaaclipseApplicationEClass,
        VaaclipseApplication.class,
        "VaaclipseApplication",
        !IS_ABSTRACT,
        !IS_INTERFACE,
        IS_GENERATED_INSTANCE_CLASS);
    initEReference(
        getVaaclipseApplication_EditorDescriptors(),
        this.getEditorPartDescriptor(),
        null,
        "editorDescriptors",
        null,
        0,
        -1,
        VaaclipseApplication.class,
        !IS_TRANSIENT,
        !IS_VOLATILE,
        IS_CHANGEABLE,
        IS_COMPOSITE,
        !IS_RESOLVE_PROXIES,
        !IS_UNSETTABLE,
        IS_UNIQUE,
        !IS_DERIVED,
        IS_ORDERED);
    initEReference(
        getVaaclipseApplication_PreferencesCategories(),
        thePreferencesPackage.getPreferencesCategory(),
        null,
        "preferencesCategories",
        null,
        0,
        -1,
        VaaclipseApplication.class,
        !IS_TRANSIENT,
        !IS_VOLATILE,
        IS_CHANGEABLE,
        !IS_COMPOSITE,
        IS_RESOLVE_PROXIES,
        !IS_UNSETTABLE,
        IS_UNIQUE,
        !IS_DERIVED,
        IS_ORDERED);
    initEReference(
        getVaaclipseApplication_PreferencesPages(),
        thePreferencesPackage.getPreferencesPage(),
        null,
        "preferencesPages",
        null,
        0,
        -1,
        VaaclipseApplication.class,
        !IS_TRANSIENT,
        !IS_VOLATILE,
        IS_CHANGEABLE,
        !IS_COMPOSITE,
        IS_RESOLVE_PROXIES,
        !IS_UNSETTABLE,
        IS_UNIQUE,
        !IS_DERIVED,
        IS_ORDERED);

    // Create resource
    createResource(eNS_URI);
  }