/** * Copyright 2012 Markus Scheidgen * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package de.hub.emffrag.testmodels.testmodel.frag.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 de.hub.emffrag.testmodels.testmodel.TestContainmentIndex; import de.hub.emffrag.testmodels.testmodel.TestEnum; import de.hub.emffrag.testmodels.testmodel.TestObject; import de.hub.emffrag.testmodels.testmodel.TestObjectIndex; import de.hub.emffrag.testmodels.testmodel.TestObjectWithIndexes; import de.hub.emffrag.testmodels.testmodel.frag.meta.TestModelFactory; import de.hub.emffrag.testmodels.testmodel.frag.meta.TestModelPackage; /** * <!-- begin-user-doc --> * An implementation of the model <b>Factory</b>. * <!-- end-user-doc --> * @generated */ public class TestModelFactoryImpl extends EFactoryImpl implements TestModelFactory { /** * Creates the default factory implementation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public static TestModelFactory init() { try { TestModelFactory theTestModelFactory = (TestModelFactory)EPackage.Registry.INSTANCE.getEFactory("http://hu-berlin.de/sam/emfhbase/testmodel"); if (theTestModelFactory != null) { return theTestModelFactory; } } catch (Exception exception) { EcorePlugin.INSTANCE.log(exception); } return new TestModelFactoryImpl(); } /** * Creates an instance of the factory. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TestModelFactoryImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EObject create(EClass eClass) { switch (eClass.getClassifierID()) { case TestModelPackage.TEST_OBJECT: return createTestObject(); case TestModelPackage.TEST_OBJECT_INDEX: return createTestObjectIndex(); case TestModelPackage.TEST_CONTAINMENT_INDEX: return createTestContainmentIndex(); case TestModelPackage.TEST_OBJECT_WITH_INDEXES: return createTestObjectWithIndexes(); default: throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); } } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public Object createFromString(EDataType eDataType, String initialValue) { switch (eDataType.getClassifierID()) { case TestModelPackage.TEST_ENUM: return createTestEnumFromString(eDataType, initialValue); default: throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); } } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public String convertToString(EDataType eDataType, Object instanceValue) { switch (eDataType.getClassifierID()) { case TestModelPackage.TEST_ENUM: return convertTestEnumToString(eDataType, instanceValue); default: throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); } } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TestObject createTestObject() { TestObjectImpl testObject = new TestObjectImpl(); return testObject; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TestObjectIndex createTestObjectIndex() { TestObjectIndexImpl testObjectIndex = new TestObjectIndexImpl(); return testObjectIndex; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TestContainmentIndex createTestContainmentIndex() { TestContainmentIndexImpl testContainmentIndex = new TestContainmentIndexImpl(); return testContainmentIndex; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TestObjectWithIndexes createTestObjectWithIndexes() { TestObjectWithIndexesImpl testObjectWithIndexes = new TestObjectWithIndexesImpl(); return testObjectWithIndexes; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TestEnum createTestEnumFromString(EDataType eDataType, String initialValue) { TestEnum result = TestEnum.get(initialValue); if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); return result; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public String convertTestEnumToString(EDataType eDataType, Object instanceValue) { return instanceValue == null ? null : instanceValue.toString(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TestModelPackage getTestModelPackage() { return (TestModelPackage)getEPackage(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @deprecated * @generated */ @Deprecated public static TestModelPackage getPackage() { return TestModelPackage.eINSTANCE; } } //TestModelFactoryImpl