/*******************************************************************************
* Copyright (c) 2009, 2010 Progress Software Corporation.
* 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
******************************************************************************/
/**
* <copyright>
* </copyright>
*
* $Id$
*/
package org.fusesource.tools.core.message.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.fusesource.tools.core.message.Body;
import org.fusesource.tools.core.message.DocumentRoot;
import org.fusesource.tools.core.message.Message;
import org.fusesource.tools.core.message.MessagePackage;
import org.fusesource.tools.core.message.Properties;
import org.fusesource.tools.core.message.Property;
/**
* <!-- 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.fusesource.tools.core.message.MessagePackage
* @generated
*/
public class MessageAdapterFactory extends AdapterFactoryImpl {
/**
* The cached model package. <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
protected static MessagePackage modelPackage;
/**
* Creates an instance of the adapter factory. <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated
*/
public MessageAdapterFactory() {
if (modelPackage == null) {
modelPackage = MessagePackage.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 MessageSwitch<Adapter> modelSwitch = new MessageSwitch<Adapter>() {
@Override
public Adapter caseBody(Body object) {
return createBodyAdapter();
}
@Override
public Adapter caseDocumentRoot(DocumentRoot object) {
return createDocumentRootAdapter();
}
@Override
public Adapter caseMessage(Message object) {
return createMessageAdapter();
}
@Override
public Adapter caseProperties(Properties object) {
return createPropertiesAdapter();
}
@Override
public Adapter caseProperty(Property object) {
return createPropertyAdapter();
}
@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.fusesource.tools.core.message.Body
* <em>Body</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.fusesource.tools.core.message.Body
* @generated
*/
public Adapter createBodyAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '
* {@link org.fusesource.tools.core.message.DocumentRoot <em>Document Root</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.fusesource.tools.core.message.DocumentRoot
* @generated
*/
public Adapter createDocumentRootAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '
* {@link org.fusesource.tools.core.message.Message <em>Message</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.fusesource.tools.core.message.Message
* @generated
*/
public Adapter createMessageAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '
* {@link org.fusesource.tools.core.message.Properties <em>Properties</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.fusesource.tools.core.message.Properties
* @generated
*/
public Adapter createPropertiesAdapter() {
return null;
}
/**
* Creates a new adapter for an object of class '
* {@link org.fusesource.tools.core.message.Property <em>Property</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.fusesource.tools.core.message.Property
* @generated
*/
public Adapter createPropertyAdapter() {
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;
}
} // MessageAdapterFactory