/** */ package com.rcpcompany.uibindings.tests.shop.internal; import java.io.FileNotFoundException; import java.net.URL; import java.util.Date; import java.util.Map; import org.eclipse.core.runtime.FileLocator; import org.eclipse.emf.common.util.DiagnosticChain; 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.emf.ecore.resource.Resource; import org.eclipse.emf.edit.domain.EditingDomain; import com.rcpcompany.uibindings.tests.shop.Contact; import com.rcpcompany.uibindings.tests.shop.Country; import com.rcpcompany.uibindings.tests.shop.CountryInfo; import com.rcpcompany.uibindings.tests.shop.Customer; import com.rcpcompany.uibindings.tests.shop.CustomerGroup; import com.rcpcompany.uibindings.tests.shop.CustomerType; import com.rcpcompany.uibindings.tests.shop.Order; import com.rcpcompany.uibindings.tests.shop.OrderItem; import com.rcpcompany.uibindings.tests.shop.Shop; import com.rcpcompany.uibindings.tests.shop.ShopAddress; import com.rcpcompany.uibindings.tests.shop.ShopFactory; import com.rcpcompany.uibindings.tests.shop.ShopItem; import com.rcpcompany.uibindings.tests.shop.ShopItemDescription; import com.rcpcompany.uibindings.tests.shop.ShopItemGroup; import com.rcpcompany.uibindings.tests.shop.ShopItemInformation; import com.rcpcompany.uibindings.tests.shop.ShopItemProperties; import com.rcpcompany.uibindings.tests.shop.ShopItemURL; import com.rcpcompany.uibindings.tests.shop.ShopPackage; import com.rcpcompany.uibindings.tests.shop.ShopURL; import com.rcpcompany.utils.logging.LogUtils; /** * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc --> * * @generated */ public class ShopFactoryImpl extends EFactoryImpl implements ShopFactory { /** * Creates the default factory implementation. <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public static ShopFactory init() { try { ShopFactory theShopFactory = (ShopFactory) EPackage.Registry.INSTANCE.getEFactory(ShopPackage.eNS_URI); if (theShopFactory != null) { return theShopFactory; } } catch (Exception exception) { EcorePlugin.INSTANCE.log(exception); } return new ShopFactoryImpl(); } /** * Creates an instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public ShopFactoryImpl() { super(); } private Shop theShop = null; @Override public Shop getShop(EditingDomain editingDomain) { if (theShop == null) { /* * Make sure the shop package is properly initialized */ final ShopPackage shopPackage = ShopPackage.eINSTANCE; /* * Need to convert the platform: URI into a file: URI as we otherwise cannot save the * data */ URL resolve = null; try { resolve = FileLocator.resolve(new URL( "platform:/plugin/com.rcpcompany.uibindings.tests.model/data/TEST.shop")); } catch (final FileNotFoundException ex) { LogUtils.error(this, "test shop does not exist!?!", ex); return null; } catch (final Exception ex) { LogUtils.error(this, ex); return null; } final Resource resource = editingDomain.loadResource(resolve.toString()); if (resource != null) { theShop = (Shop) resource.getContents().get(0); } } return theShop; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public EObject create(EClass eClass) { switch (eClass.getClassifierID()) { case ShopPackage.SHOP: return createShop(); case ShopPackage.CUSTOMER: return createCustomer(); case ShopPackage.CUSTOMER_GROUP: return createCustomerGroup(); case ShopPackage.SHOP_ITEM: return createShopItem(); case ShopPackage.SHOP_ITEM_PROPERTIES: return createShopItemProperties(); case ShopPackage.SHOP_ITEM_GROUP: return createShopItemGroup(); case ShopPackage.ORDER: return createOrder(); case ShopPackage.ORDER_ITEM: return createOrderItem(); case ShopPackage.CONTACT: return createContact(); case ShopPackage.COUNTRY: return createCountry(); case ShopPackage.COUNTRY_INFO: return createCountryInfo(); case ShopPackage.SHOP_ITEM_INFORMATION: return createShopItemInformation(); case ShopPackage.SHOP_ITEM_DESCRIPTION: return createShopItemDescription(); case ShopPackage.SHOP_ITEM_URL: return createShopItemURL(); case ShopPackage.SHOP_URL: return createShopURL(); case ShopPackage.SHOP_ADDRESS: return createShopAddress(); 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 ShopPackage.CUSTOMER_TYPE: return createCustomerTypeFromString(eDataType, initialValue); case ShopPackage.EDIAGNOSTIC_CHAIN: return createEDiagnosticChainFromString(eDataType, initialValue); case ShopPackage.EMAP: return createEMapFromString(eDataType, initialValue); case ShopPackage.EDATE: return createEDateFromString(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 ShopPackage.CUSTOMER_TYPE: return convertCustomerTypeToString(eDataType, instanceValue); case ShopPackage.EDIAGNOSTIC_CHAIN: return convertEDiagnosticChainToString(eDataType, instanceValue); case ShopPackage.EMAP: return convertEMapToString(eDataType, instanceValue); case ShopPackage.EDATE: return convertEDateToString(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 */ @Override public Shop createShop() { ShopImpl shop = new ShopImpl(); return shop; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public Customer createCustomer() { CustomerImpl customer = new CustomerImpl(); return customer; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public CustomerGroup createCustomerGroup() { CustomerGroupImpl customerGroup = new CustomerGroupImpl(); return customerGroup; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopItem createShopItem() { ShopItemImpl shopItem = new ShopItemImpl(); return shopItem; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopItemProperties createShopItemProperties() { ShopItemPropertiesImpl shopItemProperties = new ShopItemPropertiesImpl(); return shopItemProperties; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopItemGroup createShopItemGroup() { ShopItemGroupImpl shopItemGroup = new ShopItemGroupImpl(); return shopItemGroup; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public Order createOrder() { OrderImpl order = new OrderImpl(); return order; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public OrderItem createOrderItem() { OrderItemImpl orderItem = new OrderItemImpl(); return orderItem; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public Contact createContact() { ContactImpl contact = new ContactImpl(); return contact; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public Country createCountry() { CountryImpl country = new CountryImpl(); return country; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public CountryInfo createCountryInfo() { CountryInfoImpl countryInfo = new CountryInfoImpl(); return countryInfo; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopItemInformation createShopItemInformation() { ShopItemInformationImpl shopItemInformation = new ShopItemInformationImpl(); return shopItemInformation; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopItemDescription createShopItemDescription() { ShopItemDescriptionImpl shopItemDescription = new ShopItemDescriptionImpl(); return shopItemDescription; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopItemURL createShopItemURL() { ShopItemURLImpl shopItemURL = new ShopItemURLImpl(); return shopItemURL; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopURL createShopURL() { ShopURLImpl shopURL = new ShopURLImpl(); return shopURL; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopAddress createShopAddress() { ShopAddressImpl shopAddress = new ShopAddressImpl(); return shopAddress; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public CustomerType createCustomerTypeFromString(EDataType eDataType, String initialValue) { CustomerType result = CustomerType.get(initialValue); if (result == null) throw new IllegalArgumentException( "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ return result; } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public String convertCustomerTypeToString(EDataType eDataType, Object instanceValue) { return instanceValue == null ? null : instanceValue.toString(); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public DiagnosticChain createEDiagnosticChainFromString(EDataType eDataType, String initialValue) { return (DiagnosticChain) super.createFromString(eDataType, initialValue); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public String convertEDiagnosticChainToString(EDataType eDataType, Object instanceValue) { return super.convertToString(eDataType, instanceValue); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public Map<?, ?> createEMapFromString(EDataType eDataType, String initialValue) { return (Map<?, ?>) super.createFromString(initialValue); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public String convertEMapToString(EDataType eDataType, Object instanceValue) { return super.convertToString(instanceValue); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public Date createEDateFromString(EDataType eDataType, String initialValue) { return (Date) super.createFromString(eDataType, initialValue); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ public String convertEDateToString(EDataType eDataType, Object instanceValue) { return super.convertToString(eDataType, instanceValue); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Override public ShopPackage getShopPackage() { return (ShopPackage) getEPackage(); } /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @deprecated * @generated */ @Deprecated public static ShopPackage getPackage() { return ShopPackage.eINSTANCE; } } // ShopFactoryImpl