/* Copyright (C) 2011 by Claas Wilke (claas.wilke@tu-dresden.de) This file is part of Dresden OCL. Dresden OCL is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Dresden OCL is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with Dresden OCL. If not, see <http://www.gnu.org/licenses/>. */ package org.dresdenocl.metrics.metric.impl; import org.dresdenocl.metrics.metric.ConstraintMetric; import org.dresdenocl.metrics.metric.ConstraintMetrics; import org.dresdenocl.metrics.metric.Metric; import org.dresdenocl.metrics.metric.MetricFactory; import org.dresdenocl.metrics.metric.MetricPackage; 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 MetricFactoryImpl extends EFactoryImpl implements MetricFactory { /** * Creates the default factory implementation. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public static MetricFactory init() { try { MetricFactory theMetricFactory = (MetricFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.dresden-ocl.org/metrics/"); if (theMetricFactory != null) { return theMetricFactory; } } catch (Exception exception) { EcorePlugin.INSTANCE.log(exception); } return new MetricFactoryImpl(); } /** * Creates an instance of the factory. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public MetricFactoryImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public EObject create(EClass eClass) { switch (eClass.getClassifierID()) { case MetricPackage.METRIC: return createMetric(); case MetricPackage.CONSTRAINT_METRICS: return createConstraintMetrics(); case MetricPackage.CONSTRAINT_METRIC: return createConstraintMetric(); default: throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); } } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Metric createMetric() { MetricImpl metric = new MetricImpl(); return metric; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public ConstraintMetrics createConstraintMetrics() { ConstraintMetricsImpl constraintMetrics = new ConstraintMetricsImpl(); return constraintMetrics; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public ConstraintMetric createConstraintMetric() { ConstraintMetricImpl constraintMetric = new ConstraintMetricImpl(); return constraintMetric; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public MetricPackage getMetricPackage() { return (MetricPackage)getEPackage(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @deprecated * @generated */ @Deprecated public static MetricPackage getPackage() { return MetricPackage.eINSTANCE; } } //MetricFactoryImpl