/** * Copyright (c) 2012-2016 Marsha Chechik, Alessio Di Sandro, Michalis Famelis, * Rick Salay. * 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: * Alessio Di Sandro - Implementation. */ package edu.toronto.cs.se.modelepedia.classdiagram.impl; import edu.toronto.cs.se.modelepedia.classdiagram.Association; import edu.toronto.cs.se.modelepedia.classdiagram.Attribute; import edu.toronto.cs.se.modelepedia.classdiagram.ClassDiagram; import edu.toronto.cs.se.modelepedia.classdiagram.ClassDiagramFactory; import edu.toronto.cs.se.modelepedia.classdiagram.ClassDiagramPackage; import edu.toronto.cs.se.modelepedia.classdiagram.Dependency; import edu.toronto.cs.se.modelepedia.classdiagram.Operation; import org.eclipse.emf.ecore.EClass; 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; /** * <!-- begin-user-doc --> * An implementation of the model <b>Factory</b>. * <!-- end-user-doc --> * @generated */ public class ClassDiagramFactoryImpl extends EFactoryImpl implements ClassDiagramFactory { /** * Creates the default factory implementation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public static ClassDiagramFactory init() { try { ClassDiagramFactory theClassDiagramFactory = (ClassDiagramFactory)EPackage.Registry.INSTANCE.getEFactory(ClassDiagramPackage.eNS_URI); if (theClassDiagramFactory != null) { return theClassDiagramFactory; } } catch (Exception exception) { EcorePlugin.INSTANCE.log(exception); } return new ClassDiagramFactoryImpl(); } /** * Creates an instance of the factory. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public ClassDiagramFactoryImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EObject create(EClass eClass) { switch (eClass.getClassifierID()) { case ClassDiagramPackage.CLASS_DIAGRAM: return createClassDiagram(); case ClassDiagramPackage.CLASS: return createClass(); case ClassDiagramPackage.ATTRIBUTE: return createAttribute(); case ClassDiagramPackage.OPERATION: return createOperation(); case ClassDiagramPackage.DEPENDENCY: return createDependency(); case ClassDiagramPackage.ASSOCIATION: return createAssociation(); default: throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); } } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public ClassDiagram createClassDiagram() { ClassDiagramImpl classDiagram = new ClassDiagramImpl(); return classDiagram; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public edu.toronto.cs.se.modelepedia.classdiagram.Class createClass() { ClassImpl class_ = new ClassImpl(); return class_; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Attribute createAttribute() { AttributeImpl attribute = new AttributeImpl(); return attribute; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Operation createOperation() { OperationImpl operation = new OperationImpl(); return operation; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Dependency createDependency() { DependencyImpl dependency = new DependencyImpl(); return dependency; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Association createAssociation() { AssociationImpl association = new AssociationImpl(); return association; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public ClassDiagramPackage getClassDiagramPackage() { return (ClassDiagramPackage)getEPackage(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @deprecated * @generated */ @Deprecated public static ClassDiagramPackage getPackage() { return ClassDiagramPackage.eINSTANCE; } } //ClassDiagramFactoryImpl