blob: 7689c0dae4d9c7a569b7f892d96cad32a74cd152 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2001, 2006 IBM Corporation and others.
* 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:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.jst.j2ee.commonarchivecore.internal.util;
import java.util.List;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jst.j2ee.common.J2EEEObject;
import org.eclipse.jst.j2ee.commonarchivecore.internal.ApplicationClientFile;
import org.eclipse.jst.j2ee.commonarchivecore.internal.Archive;
import org.eclipse.jst.j2ee.commonarchivecore.internal.ClientModuleRef;
import org.eclipse.jst.j2ee.commonarchivecore.internal.CommonarchiveFactory;
import org.eclipse.jst.j2ee.commonarchivecore.internal.CommonarchivePackage;
import org.eclipse.jst.j2ee.commonarchivecore.internal.ConnectorModuleRef;
import org.eclipse.jst.j2ee.commonarchivecore.internal.Container;
import org.eclipse.jst.j2ee.commonarchivecore.internal.EARFile;
import org.eclipse.jst.j2ee.commonarchivecore.internal.EJBJarFile;
import org.eclipse.jst.j2ee.commonarchivecore.internal.EJBModuleRef;
import org.eclipse.jst.j2ee.commonarchivecore.internal.File;
import org.eclipse.jst.j2ee.commonarchivecore.internal.ModuleFile;
import org.eclipse.jst.j2ee.commonarchivecore.internal.ModuleRef;
import org.eclipse.jst.j2ee.commonarchivecore.internal.RARFile;
import org.eclipse.jst.j2ee.commonarchivecore.internal.ReadOnlyDirectory;
import org.eclipse.jst.j2ee.commonarchivecore.internal.WARFile;
import org.eclipse.jst.j2ee.commonarchivecore.internal.WebModuleRef;
import org.eclipse.jst.j2ee.commonarchivecore.internal.impl.CommonarchiveFactoryImpl;
public class CommonarchiveSwitch {
/**
* The cached model package
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
protected static CommonarchivePackage modelPackage;
protected static CommonarchiveFactory factory;
public CommonarchiveSwitch() {
factory = (CommonarchiveFactory) CommonarchiveFactoryImpl.getPackage().getEFactoryInstance();
modelPackage = CommonarchiveFactoryImpl.getPackage();
}
public Object doSwitch(EObject theEObject) {
EClass theEClass = theEObject.eClass();
if (theEClass.eContainer() != modelPackage)
return defaultCase(theEObject);
switch (theEClass.getClassifierID()) {
case CommonarchivePackage.WAR_FILE : {
WARFile castedObject = (WARFile) theEObject;
Object result = caseWARFile(castedObject);
if (result == null)
result = caseModuleFile(castedObject);
if (result == null)
result = caseArchive(castedObject);
if (result == null)
result = caseContainer(castedObject);
if (result == null)
result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.EAR_FILE : {
EARFile castedObject = (EARFile) theEObject;
Object result = caseEARFile(castedObject);
if (result == null)
result = caseModuleFile(castedObject);
if (result == null)
result = caseArchive(castedObject);
if (result == null)
result = caseContainer(castedObject);
if (result == null)
result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.APPLICATION_CLIENT_FILE : {
ApplicationClientFile castedObject = (ApplicationClientFile) theEObject;
Object result = caseApplicationClientFile(castedObject);
if (result == null)
result = caseModuleFile(castedObject);
if (result == null)
result = caseArchive(castedObject);
if (result == null)
result = caseContainer(castedObject);
if (result == null)
result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.EJB_JAR_FILE : {
EJBJarFile castedObject = (EJBJarFile) theEObject;
Object result = caseEJBJarFile(castedObject);
if (result == null)
result = caseModuleFile(castedObject);
if (result == null)
result = caseArchive(castedObject);
if (result == null)
result = caseContainer(castedObject);
if (result == null)
result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.RAR_FILE : {
RARFile castedObject = (RARFile) theEObject;
Object result = caseRARFile(castedObject);
if (result == null)
result = caseModuleFile(castedObject);
if (result == null)
result = caseArchive(castedObject);
if (result == null)
result = caseContainer(castedObject);
if (result == null)
result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.ARCHIVE : {
Archive castedObject = (Archive) theEObject;
Object result = caseArchive(castedObject);
if (result == null)
result = caseContainer(castedObject);
if (result == null)
result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.FILE : {
File castedObject = (File) theEObject;
Object result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.READ_ONLY_DIRECTORY : {
ReadOnlyDirectory castedObject = (ReadOnlyDirectory) theEObject;
Object result = caseReadOnlyDirectory(castedObject);
if (result == null)
result = caseContainer(castedObject);
if (result == null)
result = caseFile(castedObject);
if (result == null)
result = defaultCase(theEObject);
return result;
}
default :
return defaultCase(theEObject);
}
} // doSwitch
public Object caseContainer(Container object) {
return null;
}
public Object caseWARFile(WARFile object) {
return null;
}
public Object caseModuleFile(ModuleFile object) {
return null;
}
public Object caseEARFile(EARFile object) {
return null;
}
public Object caseApplicationClientFile(ApplicationClientFile object) {
return null;
}
public Object caseEJBJarFile(EJBJarFile object) {
return null;
}
public Object caseRARFile(RARFile object) {
return null;
}
public Object caseArchive(Archive object) {
return null;
}
public Object caseFile(File object) {
return null;
}
public Object caseReadOnlyDirectory(ReadOnlyDirectory object) {
return null;
}
public Object defaultCase(EObject object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseModuleRef(ModuleRef object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseEJBModuleRef(EJBModuleRef object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseWebModuleRef(WebModuleRef object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseClientModuleRef(ClientModuleRef object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseConnectorModuleRef(ConnectorModuleRef object) {
return null;
}
/**
* Returns the result of interpretting the object as an instance of '<em>J2EEE Object</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
* returning a non-null result will terminate the switch.
* <!-- end-user-doc -->
* @param object the target of the switch.
* @return the result of interpretting the object as an instance of '<em>J2EEE Object</em>'.
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
* @generated
*/
public Object caseJ2EEEObject(J2EEEObject object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object doSwitchGen(EObject theEObject) {
return doSwitch(theEObject.eClass(), theEObject);
}
/**
* Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the first non-null result returned by a <code>caseXXX</code> call.
* @generated
*/
protected Object doSwitch(EClass theEClass, EObject theEObject) {
if (theEClass.eContainer() == modelPackage) {
return doSwitch(theEClass.getClassifierID(), theEObject);
}
List eSuperTypes = theEClass.getESuperTypes();
return
eSuperTypes.isEmpty() ?
defaultCase(theEObject) :
doSwitch((EClass)eSuperTypes.get(0), theEObject);
}
/**
* Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the first non-null result returned by a <code>caseXXX</code> call.
* @generated
*/
protected Object doSwitch(int classifierID, EObject theEObject) {
switch (classifierID) {
case CommonarchivePackage.FILE: {
File file = (File)theEObject;
Object result = caseFile(file);
if (result == null) result = caseJ2EEEObject(file);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.ARCHIVE: {
Archive archive = (Archive)theEObject;
Object result = caseArchive(archive);
if (result == null) result = caseContainer(archive);
if (result == null) result = caseFile(archive);
if (result == null) result = caseJ2EEEObject(archive);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.EJB_JAR_FILE: {
EJBJarFile ejbJarFile = (EJBJarFile)theEObject;
Object result = caseEJBJarFile(ejbJarFile);
if (result == null) result = caseModuleFile(ejbJarFile);
if (result == null) result = caseArchive(ejbJarFile);
if (result == null) result = caseContainer(ejbJarFile);
if (result == null) result = caseFile(ejbJarFile);
if (result == null) result = caseJ2EEEObject(ejbJarFile);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.WAR_FILE: {
WARFile warFile = (WARFile)theEObject;
Object result = caseWARFile(warFile);
if (result == null) result = caseModuleFile(warFile);
if (result == null) result = caseArchive(warFile);
if (result == null) result = caseContainer(warFile);
if (result == null) result = caseFile(warFile);
if (result == null) result = caseJ2EEEObject(warFile);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.EAR_FILE: {
EARFile earFile = (EARFile)theEObject;
Object result = caseEARFile(earFile);
if (result == null) result = caseModuleFile(earFile);
if (result == null) result = caseArchive(earFile);
if (result == null) result = caseContainer(earFile);
if (result == null) result = caseFile(earFile);
if (result == null) result = caseJ2EEEObject(earFile);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.APPLICATION_CLIENT_FILE: {
ApplicationClientFile applicationClientFile = (ApplicationClientFile)theEObject;
Object result = caseApplicationClientFile(applicationClientFile);
if (result == null) result = caseModuleFile(applicationClientFile);
if (result == null) result = caseArchive(applicationClientFile);
if (result == null) result = caseContainer(applicationClientFile);
if (result == null) result = caseFile(applicationClientFile);
if (result == null) result = caseJ2EEEObject(applicationClientFile);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.MODULE_FILE: {
ModuleFile moduleFile = (ModuleFile)theEObject;
Object result = caseModuleFile(moduleFile);
if (result == null) result = caseArchive(moduleFile);
if (result == null) result = caseContainer(moduleFile);
if (result == null) result = caseFile(moduleFile);
if (result == null) result = caseJ2EEEObject(moduleFile);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.CONTAINER: {
Container container = (Container)theEObject;
Object result = caseContainer(container);
if (result == null) result = caseFile(container);
if (result == null) result = caseJ2EEEObject(container);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.READ_ONLY_DIRECTORY: {
ReadOnlyDirectory readOnlyDirectory = (ReadOnlyDirectory)theEObject;
Object result = caseReadOnlyDirectory(readOnlyDirectory);
if (result == null) result = caseContainer(readOnlyDirectory);
if (result == null) result = caseFile(readOnlyDirectory);
if (result == null) result = caseJ2EEEObject(readOnlyDirectory);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.RAR_FILE: {
RARFile rarFile = (RARFile)theEObject;
Object result = caseRARFile(rarFile);
if (result == null) result = caseModuleFile(rarFile);
if (result == null) result = caseArchive(rarFile);
if (result == null) result = caseContainer(rarFile);
if (result == null) result = caseFile(rarFile);
if (result == null) result = caseJ2EEEObject(rarFile);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.MODULE_REF: {
ModuleRef moduleRef = (ModuleRef)theEObject;
Object result = caseModuleRef(moduleRef);
if (result == null) result = caseJ2EEEObject(moduleRef);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.EJB_MODULE_REF: {
EJBModuleRef ejbModuleRef = (EJBModuleRef)theEObject;
Object result = caseEJBModuleRef(ejbModuleRef);
if (result == null) result = caseModuleRef(ejbModuleRef);
if (result == null) result = caseJ2EEEObject(ejbModuleRef);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.WEB_MODULE_REF: {
WebModuleRef webModuleRef = (WebModuleRef)theEObject;
Object result = caseWebModuleRef(webModuleRef);
if (result == null) result = caseModuleRef(webModuleRef);
if (result == null) result = caseJ2EEEObject(webModuleRef);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.CLIENT_MODULE_REF: {
ClientModuleRef clientModuleRef = (ClientModuleRef)theEObject;
Object result = caseClientModuleRef(clientModuleRef);
if (result == null) result = caseModuleRef(clientModuleRef);
if (result == null) result = caseJ2EEEObject(clientModuleRef);
if (result == null) result = defaultCase(theEObject);
return result;
}
case CommonarchivePackage.CONNECTOR_MODULE_REF: {
ConnectorModuleRef connectorModuleRef = (ConnectorModuleRef)theEObject;
Object result = caseConnectorModuleRef(connectorModuleRef);
if (result == null) result = caseModuleRef(connectorModuleRef);
if (result == null) result = caseJ2EEEObject(connectorModuleRef);
if (result == null) result = defaultCase(theEObject);
return result;
}
default: return defaultCase(theEObject);
}
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseContainerGen(Container object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseWARFileGen(WARFile object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseModuleFileGen(ModuleFile object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseApplicationClientFileGen(ApplicationClientFile object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseEARFileGen(EARFile object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseEJBJarFileGen(EJBJarFile object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseRARFileGen(RARFile object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseArchiveGen(Archive object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseFileGen(File object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object caseReadOnlyDirectoryGen(ReadOnlyDirectory object) {
return null;
}
/**
* @generated This field/method will be replaced during code generation.
*/
public Object defaultCaseGen(EObject object) {
return null;
}
} //CommonarchiveSwitch