/** * ***************************************************************************** * Copyright (c) 2014 BestSolution.at 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: * Tom Schindl <tom.schindl@bestsolution.at> - initial API and implementation * ******************************************************************************* */ package at.bestsolution.persistence.tasktracker.util; import at.bestsolution.persistence.tasktracker.*; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.util.Switch; /** * <!-- begin-user-doc --> * The <b>Switch</b> for the model's inheritance hierarchy. * It supports the call {@link #doSwitch(EObject) doSwitch(object)} * to invoke the <code>caseXXX</code> method for each class of the model, * starting with the actual class of the object * and proceeding up the inheritance hierarchy * until a non-null result is returned, * which is the result of the switch. * <!-- end-user-doc --> * @see at.bestsolution.persistence.tasktracker.TasktrackerPackage * @generated */ public class TasktrackerSwitch<T> extends Switch<T> { /** * The cached model package * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected static TasktrackerPackage modelPackage; /** * Creates an instance of the switch. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public TasktrackerSwitch() { if (modelPackage == null) { modelPackage = TasktrackerPackage.eINSTANCE; } } /** * Checks whether this is a switch for the given package. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @parameter ePackage the package in question. * @return whether this is a switch for the given package. * @generated */ @Override protected boolean isSwitchFor(EPackage ePackage) { return ePackage == modelPackage; } /** * 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 */ @Override protected T doSwitch(int classifierID, EObject theEObject) { switch (classifierID) { case TasktrackerPackage.BASE_OBJECT: { BaseObject baseObject = (BaseObject)theEObject; T result = caseBaseObject(baseObject); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.TASK_REPOSITORY: { TaskRepository taskRepository = (TaskRepository)theEObject; T result = caseTaskRepository(taskRepository); if (result == null) result = caseBaseObject(taskRepository); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.PERSON: { Person person = (Person)theEObject; T result = casePerson(person); if (result == null) result = caseBaseObject(person); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.TASK: { Task task = (Task)theEObject; T result = caseTask(task); if (result == null) result = caseBaseObject(task); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.COMMENT: { Comment comment = (Comment)theEObject; T result = caseComment(comment); if (result == null) result = caseBaseObject(comment); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.CHANGE_SET: { ChangeSet changeSet = (ChangeSet)theEObject; T result = caseChangeSet(changeSet); if (result == null) result = caseBaseObject(changeSet); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.SOURCE_REPOSITORY: { SourceRepository sourceRepository = (SourceRepository)theEObject; T result = caseSourceRepository(sourceRepository); if (result == null) result = caseBaseObject(sourceRepository); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.VERSION: { Version version = (Version)theEObject; T result = caseVersion(version); if (result == null) result = caseBaseObject(version); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.ATTACHMENT: { Attachment attachment = (Attachment)theEObject; T result = caseAttachment(attachment); if (result == null) result = caseBaseObject(attachment); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.COMMENT_ATTACHMENT: { CommentAttachment commentAttachment = (CommentAttachment)theEObject; T result = caseCommentAttachment(commentAttachment); if (result == null) result = caseAttachment(commentAttachment); if (result == null) result = caseBaseObject(commentAttachment); if (result == null) result = defaultCase(theEObject); return result; } case TasktrackerPackage.TASK_ATTACHMENT: { TaskAttachment taskAttachment = (TaskAttachment)theEObject; T result = caseTaskAttachment(taskAttachment); if (result == null) result = caseAttachment(taskAttachment); if (result == null) result = caseBaseObject(taskAttachment); if (result == null) result = defaultCase(theEObject); return result; } default: return defaultCase(theEObject); } } /** * Returns the result of interpreting the object as an instance of '<em>Base 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 interpreting the object as an instance of '<em>Base Object</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseBaseObject(BaseObject object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Task Repository</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 interpreting the object as an instance of '<em>Task Repository</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseTaskRepository(TaskRepository object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Person</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 interpreting the object as an instance of '<em>Person</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T casePerson(Person object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Task</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 interpreting the object as an instance of '<em>Task</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseTask(Task object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Comment</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 interpreting the object as an instance of '<em>Comment</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseComment(Comment object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Change Set</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 interpreting the object as an instance of '<em>Change Set</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseChangeSet(ChangeSet object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Source Repository</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 interpreting the object as an instance of '<em>Source Repository</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseSourceRepository(SourceRepository object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Version</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 interpreting the object as an instance of '<em>Version</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseVersion(Version object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Attachment</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 interpreting the object as an instance of '<em>Attachment</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseAttachment(Attachment object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Comment Attachment</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 interpreting the object as an instance of '<em>Comment Attachment</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseCommentAttachment(CommentAttachment object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Task Attachment</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 interpreting the object as an instance of '<em>Task Attachment</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseTaskAttachment(TaskAttachment object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch, but this is the last case anyway. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>EObject</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) * @generated */ @Override public T defaultCase(EObject object) { return null; } } //TasktrackerSwitch