blob: 951d19efd502ebd5e24d6c1f26fbb3ec33fa5e5e [file] [log] [blame]
/**
* <copyright>
* </copyright>
*
* $Id$
*/
package org.eclipse.mylyn.docs.epub.opf.impl;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EDataType;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.impl.EFactoryImpl;
import org.eclipse.emf.ecore.plugin.EcorePlugin;
import org.eclipse.mylyn.docs.epub.opf.Guide;
import org.eclipse.mylyn.docs.epub.opf.Item;
import org.eclipse.mylyn.docs.epub.opf.Itemref;
import org.eclipse.mylyn.docs.epub.opf.Manifest;
import org.eclipse.mylyn.docs.epub.opf.Meta;
import org.eclipse.mylyn.docs.epub.opf.Metadata;
import org.eclipse.mylyn.docs.epub.opf.OPFFactory;
import org.eclipse.mylyn.docs.epub.opf.OPFPackage;
import org.eclipse.mylyn.docs.epub.opf.Reference;
import org.eclipse.mylyn.docs.epub.opf.Role;
import org.eclipse.mylyn.docs.epub.opf.Spine;
import org.eclipse.mylyn.docs.epub.opf.Tours;
import org.eclipse.mylyn.docs.epub.opf.Type;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Factory</b>.
* <!-- end-user-doc -->
* @generated
*/
public class OPFFactoryImpl extends EFactoryImpl implements OPFFactory {
/**
* Creates the default factory implementation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static OPFFactory init() {
try {
OPFFactory theOPFFactory = (OPFFactory)EPackage.Registry.INSTANCE.getEFactory(OPFPackage.eNS_URI);
if (theOPFFactory != null) {
return theOPFFactory;
}
}
catch (Exception exception) {
EcorePlugin.INSTANCE.log(exception);
}
return new OPFFactoryImpl();
}
/**
* Creates an instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public OPFFactoryImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EObject create(EClass eClass) {
switch (eClass.getClassifierID()) {
case OPFPackage.PACKAGE: return createPackage();
case OPFPackage.METADATA: return createMetadata();
case OPFPackage.MANIFEST: return createManifest();
case OPFPackage.ITEM: return createItem();
case OPFPackage.SPINE: return createSpine();
case OPFPackage.GUIDE: return createGuide();
case OPFPackage.REFERENCE: return createReference();
case OPFPackage.ITEMREF: return createItemref();
case OPFPackage.TOURS: return createTours();
case OPFPackage.META: return createMeta();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object createFromString(EDataType eDataType, String initialValue) {
switch (eDataType.getClassifierID()) {
case OPFPackage.ROLE:
return createRoleFromString(eDataType, initialValue);
case OPFPackage.TYPE:
return createTypeFromString(eDataType, initialValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String convertToString(EDataType eDataType, Object instanceValue) {
switch (eDataType.getClassifierID()) {
case OPFPackage.ROLE:
return convertRoleToString(eDataType, instanceValue);
case OPFPackage.TYPE:
return convertTypeToString(eDataType, instanceValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public org.eclipse.mylyn.docs.epub.opf.Package createPackage() {
PackageImpl package_ = new PackageImpl();
return package_;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Metadata createMetadata() {
MetadataImpl metadata = new MetadataImpl();
return metadata;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Manifest createManifest() {
ManifestImpl manifest = new ManifestImpl();
return manifest;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Item createItem() {
ItemImpl item = new ItemImpl();
return item;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Spine createSpine() {
SpineImpl spine = new SpineImpl();
return spine;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Guide createGuide() {
GuideImpl guide = new GuideImpl();
return guide;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Reference createReference() {
ReferenceImpl reference = new ReferenceImpl();
return reference;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Itemref createItemref() {
ItemrefImpl itemref = new ItemrefImpl();
return itemref;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Tours createTours() {
ToursImpl tours = new ToursImpl();
return tours;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Meta createMeta() {
MetaImpl meta = new MetaImpl();
return meta;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Role createRole(String literal) {
Role result = Role.get(literal);
if (result == null) throw new IllegalArgumentException("The value '" + literal + "' is not a valid enumerator of '" + OPFPackage.Literals.ROLE.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
return result;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Role createRoleFromString(EDataType eDataType, String initialValue) {
return createRole(initialValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertRole(Role instanceValue) {
return instanceValue == null ? null : instanceValue.toString();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertRoleToString(EDataType eDataType, Object instanceValue) {
return convertRole((Role)instanceValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Type createType(String literal) {
Type result = Type.get(literal);
if (result == null) throw new IllegalArgumentException("The value '" + literal + "' is not a valid enumerator of '" + OPFPackage.Literals.TYPE.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
return result;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Type createTypeFromString(EDataType eDataType, String initialValue) {
return createType(initialValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertType(Type instanceValue) {
return instanceValue == null ? null : instanceValue.toString();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public String convertTypeToString(EDataType eDataType, Object instanceValue) {
return convertType((Type)instanceValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public OPFPackage getOPFPackage() {
return (OPFPackage)getEPackage();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @deprecated
* @generated
*/
@Deprecated
public static OPFPackage getPackage() {
return OPFPackage.eINSTANCE;
}
} //OPFFactoryImpl