/******************************************************************************* | |
* Copyright (c) 2006, 2010 Soyatec (http://www.soyatec.com) 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 | |
* | |
* Contributors: | |
* Soyatec - initial API and implementation | |
*******************************************************************************/ | |
package org.eclipse.xwt.emf.test.books.impl; | |
import org.eclipse.emf.ecore.EAttribute; | |
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.xwt.emf.test.books.Book; | |
import org.eclipse.xwt.emf.test.books.BooksFactory; | |
import org.eclipse.xwt.emf.test.books.BooksPackage; | |
import org.eclipse.xwt.emf.test.books.Bookstore; | |
import org.eclipse.xwt.emf.test.books.Title; | |
/** | |
* <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- | |
* end-user-doc --> | |
* | |
* @generated | |
*/ | |
public class BooksPackageImpl extends EPackageImpl implements BooksPackage { | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
private EClass bookstoreEClass = null; | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
private EClass bookEClass = null; | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
private EClass titleEClass = 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.xwt.emf.test.books.BooksPackage#eNS_URI | |
* @see #init() | |
* @generated | |
*/ | |
private BooksPackageImpl() { | |
super(eNS_URI, BooksFactory.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. Simple dependencies are | |
* satisfied by calling this method on all dependent packages before doing | |
* anything else. This method drives initialization for interdependent | |
* packages directly, in parallel with this package, itself. | |
* <p> | |
* Of this package and its interdependencies, all packages which have not | |
* yet been registered by their URI values are first created and registered. | |
* The packages are then initialized in two steps: meta-model objects for | |
* all of the packages are created before any are initialized, since one | |
* package's meta-model objects may refer to those of another. | |
* <p> | |
* Invocation of this method will not affect any packages that have already | |
* been initialized. <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @see #eNS_URI | |
* @see #createPackageContents() | |
* @see #initializePackageContents() | |
* @generated | |
*/ | |
public static BooksPackage init() { | |
if (isInited) | |
return (BooksPackage) EPackage.Registry.INSTANCE | |
.getEPackage(BooksPackage.eNS_URI); | |
// Obtain or create and register package | |
BooksPackageImpl theBooksPackage = (BooksPackageImpl) (EPackage.Registry.INSTANCE | |
.getEPackage(eNS_URI) instanceof BooksPackageImpl ? EPackage.Registry.INSTANCE | |
.getEPackage(eNS_URI) | |
: new BooksPackageImpl()); | |
isInited = true; | |
// Create package meta-data objects | |
theBooksPackage.createPackageContents(); | |
// Initialize created meta-data | |
theBooksPackage.initializePackageContents(); | |
// Mark meta-data to indicate it can't be changed | |
theBooksPackage.freeze(); | |
return theBooksPackage; | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EClass getBookstore() { | |
return bookstoreEClass; | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EReference getBookstore_Books() { | |
return (EReference) bookstoreEClass.getEStructuralFeatures().get(0); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EClass getBook() { | |
return bookEClass; | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EReference getBook_Title() { | |
return (EReference) bookEClass.getEStructuralFeatures().get(3); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EClass getTitle() { | |
return titleEClass; | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EAttribute getTitle_Lan() { | |
return (EAttribute) titleEClass.getEStructuralFeatures().get(0); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EAttribute getTitle_Text() { | |
return (EAttribute) titleEClass.getEStructuralFeatures().get(1); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EAttribute getBook_Author() { | |
return (EAttribute) bookEClass.getEStructuralFeatures().get(0); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EAttribute getBook_Price() { | |
return (EAttribute) bookEClass.getEStructuralFeatures().get(1); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public EAttribute getBook_Year() { | |
return (EAttribute) bookEClass.getEStructuralFeatures().get(2); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public BooksFactory getBooksFactory() { | |
return (BooksFactory) 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 | |
bookstoreEClass = createEClass(BOOKSTORE); | |
createEReference(bookstoreEClass, BOOKSTORE__BOOKS); | |
bookEClass = createEClass(BOOK); | |
createEAttribute(bookEClass, BOOK__AUTHOR); | |
createEAttribute(bookEClass, BOOK__PRICE); | |
createEAttribute(bookEClass, BOOK__YEAR); | |
createEReference(bookEClass, BOOK__TITLE); | |
titleEClass = createEClass(TITLE); | |
createEAttribute(titleEClass, TITLE__LAN); | |
createEAttribute(titleEClass, TITLE__TEXT); | |
} | |
/** | |
* <!-- begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
private boolean isInitialized = false; | |
/** | |
* Complete the initialization of the package and its meta-model. This | |
* method is guarded to have no affect on any invocation but its first. <!-- | |
* begin-user-doc --> <!-- end-user-doc --> | |
* | |
* @generated | |
*/ | |
public void initializePackageContents() { | |
if (isInitialized) | |
return; | |
isInitialized = true; | |
// Initialize package | |
setName(eNAME); | |
setNsPrefix(eNS_PREFIX); | |
setNsURI(eNS_URI); | |
// Create type parameters | |
// Set bounds for type parameters | |
// Add supertypes to classes | |
// Initialize classes and features; add operations and parameters | |
initEClass(bookstoreEClass, Bookstore.class, "Bookstore", !IS_ABSTRACT, | |
!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | |
initEReference(getBookstore_Books(), this.getBook(), null, "books", | |
null, 1, -1, Bookstore.class, !IS_TRANSIENT, !IS_VOLATILE, | |
IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, | |
!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | |
initEClass(bookEClass, Book.class, "Book", !IS_ABSTRACT, !IS_INTERFACE, | |
IS_GENERATED_INSTANCE_CLASS); | |
initEAttribute(getBook_Author(), ecorePackage.getEString(), "author", | |
null, 0, 1, Book.class, !IS_TRANSIENT, !IS_VOLATILE, | |
IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, | |
IS_ORDERED); | |
initEAttribute(getBook_Price(), ecorePackage.getEDouble(), "price", | |
null, 0, 1, Book.class, !IS_TRANSIENT, !IS_VOLATILE, | |
IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, | |
IS_ORDERED); | |
initEAttribute(getBook_Year(), ecorePackage.getELong(), "year", null, | |
0, 1, Book.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, | |
!IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | |
initEReference(getBook_Title(), this.getTitle(), null, "title", null, | |
0, 1, Book.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, | |
IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, | |
!IS_DERIVED, IS_ORDERED); | |
initEClass(titleEClass, Title.class, "Title", !IS_ABSTRACT, | |
!IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | |
initEAttribute(getTitle_Lan(), ecorePackage.getEString(), "lan", null, | |
0, 1, Title.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, | |
!IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | |
initEAttribute(getTitle_Text(), ecorePackage.getEString(), "text", | |
null, 0, 1, Title.class, !IS_TRANSIENT, !IS_VOLATILE, | |
IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, | |
IS_ORDERED); | |
// Create resource | |
createResource(eNS_URI); | |
} | |
} // BooksPackageImpl |