/**
 */
package org.etsi.mts.tdl.extendedconfigurations.util;

import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;

import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;

import org.eclipse.emf.ecore.EObject;

import org.etsi.mts.tdl.Element;
import org.etsi.mts.tdl.GateReference;
import org.etsi.mts.tdl.NamedElement;
import org.etsi.mts.tdl.PackageableElement;
import org.etsi.mts.tdl.TestConfiguration;

import org.etsi.mts.tdl.extendedconfigurations.*;

/**
 * <!-- begin-user-doc -->
 * The <b>Adapter Factory</b> for the model.
 * It provides an adapter <code>createXXX</code> method for each class of the model.
 * <!-- end-user-doc -->
 * @see org.etsi.mts.tdl.extendedconfigurations.ExtendedConfigurationsPackage
 * @generated
 */
public class ExtendedConfigurationsAdapterFactory extends AdapterFactoryImpl
{
	/**
	 * The cached model package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected static ExtendedConfigurationsPackage modelPackage;

	/**
	 * Creates an instance of the adapter factory.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public ExtendedConfigurationsAdapterFactory()
	{
		if (modelPackage == null)
		{
			modelPackage = ExtendedConfigurationsPackage.eINSTANCE;
		}
	}

	/**
	 * Returns whether this factory is applicable for the type of the object.
	 * <!-- begin-user-doc -->
	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
	 * <!-- end-user-doc -->
	 * @return whether this factory is applicable for the type of the object.
	 * @generated
	 */
	@Override
	public boolean isFactoryForType(Object object)
	{
		if (object == modelPackage)
		{
			return true;
		}
		if (object instanceof EObject)
		{
			return ((EObject)object).eClass().getEPackage() == modelPackage;
		}
		return false;
	}

	/**
	 * The switch that delegates to the <code>createXXX</code> methods.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected ExtendedConfigurationsSwitch<Adapter> modelSwitch =
		new ExtendedConfigurationsSwitch<Adapter>()
		{
			@Override
			public Adapter caseExtendedTestConfiguration(ExtendedTestConfiguration object)
			{
				return createExtendedTestConfigurationAdapter();
			}
			@Override
			public Adapter caseTestConfigurationInstance(TestConfigurationInstance object)
			{
				return createTestConfigurationInstanceAdapter();
			}
			@Override
			public Adapter caseTestConfigurationOperation(TestConfigurationOperation object)
			{
				return createTestConfigurationOperationAdapter();
			}
			@Override
			public Adapter caseComponentReference(ComponentReference object)
			{
				return createComponentReferenceAdapter();
			}
			@Override
			public Adapter caseComponentMerge(ComponentMerge object)
			{
				return createComponentMergeAdapter();
			}
			@Override
			public Adapter caseComponentHide(ComponentHide object)
			{
				return createComponentHideAdapter();
			}
			@Override
			public Adapter caseReassignRole(ReassignRole object)
			{
				return createReassignRoleAdapter();
			}
			@Override
			public Adapter caseComponentAlias(ComponentAlias object)
			{
				return createComponentAliasAdapter();
			}
			@Override
			public Adapter caseExtendedGateReference(ExtendedGateReference object)
			{
				return createExtendedGateReferenceAdapter();
			}
			@Override
			public Adapter caseElement(Element object)
			{
				return createElementAdapter();
			}
			@Override
			public Adapter caseNamedElement(NamedElement object)
			{
				return createNamedElementAdapter();
			}
			@Override
			public Adapter casePackageableElement(PackageableElement object)
			{
				return createPackageableElementAdapter();
			}
			@Override
			public Adapter caseTestConfiguration(TestConfiguration object)
			{
				return createTestConfigurationAdapter();
			}
			@Override
			public Adapter caseGateReference(GateReference object)
			{
				return createGateReferenceAdapter();
			}
			@Override
			public Adapter defaultCase(EObject object)
			{
				return createEObjectAdapter();
			}
		};

	/**
	 * Creates an adapter for the <code>target</code>.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param target the object to adapt.
	 * @return the adapter for the <code>target</code>.
	 * @generated
	 */
	@Override
	public Adapter createAdapter(Notifier target)
	{
		return modelSwitch.doSwitch((EObject)target);
	}


	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.ExtendedTestConfiguration <em>Extended Test Configuration</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.ExtendedTestConfiguration
	 * @generated
	 */
	public Adapter createExtendedTestConfigurationAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.TestConfigurationInstance <em>Test Configuration Instance</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.TestConfigurationInstance
	 * @generated
	 */
	public Adapter createTestConfigurationInstanceAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.TestConfigurationOperation <em>Test Configuration Operation</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.TestConfigurationOperation
	 * @generated
	 */
	public Adapter createTestConfigurationOperationAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.ComponentReference <em>Component Reference</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.ComponentReference
	 * @generated
	 */
	public Adapter createComponentReferenceAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.ComponentMerge <em>Component Merge</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.ComponentMerge
	 * @generated
	 */
	public Adapter createComponentMergeAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.ComponentHide <em>Component Hide</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.ComponentHide
	 * @generated
	 */
	public Adapter createComponentHideAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.ReassignRole <em>Reassign Role</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.ReassignRole
	 * @generated
	 */
	public Adapter createReassignRoleAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.ComponentAlias <em>Component Alias</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.ComponentAlias
	 * @generated
	 */
	public Adapter createComponentAliasAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.extendedconfigurations.ExtendedGateReference <em>Extended Gate Reference</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.extendedconfigurations.ExtendedGateReference
	 * @generated
	 */
	public Adapter createExtendedGateReferenceAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.Element <em>Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.Element
	 * @generated
	 */
	public Adapter createElementAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.NamedElement <em>Named Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.NamedElement
	 * @generated
	 */
	public Adapter createNamedElementAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.PackageableElement <em>Packageable Element</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.PackageableElement
	 * @generated
	 */
	public Adapter createPackageableElementAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.TestConfiguration <em>Test Configuration</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.TestConfiguration
	 * @generated
	 */
	public Adapter createTestConfigurationAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.etsi.mts.tdl.GateReference <em>Gate Reference</em>}'.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null so that we can easily ignore cases;
	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @see org.etsi.mts.tdl.GateReference
	 * @generated
	 */
	public Adapter createGateReferenceAdapter()
	{
		return null;
	}

	/**
	 * Creates a new adapter for the default case.
	 * <!-- begin-user-doc -->
	 * This default implementation returns null.
	 * <!-- end-user-doc -->
	 * @return the new adapter.
	 * @generated
	 */
	public Adapter createEObjectAdapter()
	{
		return null;
	}

} //ExtendedConfigurationsAdapterFactory
