org.eclipse.emf.cdo.security.util

## Class SecuritySwitch<T>

- java.lang.Object
- - org.eclipse.emf.cdo.security.util.SecuritySwitch<T>

-     public class SecuritySwitch<T>
      extends java.lang.Object

  The Switch for the model's inheritance hierarchy. It supports the call `doSwitch(object)` to invoke the `caseXXX` 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.
  See Also:
    `SecurityPackage`
  Generated

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static SecurityPackage` | `modelPackage` The cached model package

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SecuritySwitch()` Creates an instance of the switch.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `T` | `caseAndFilter(AndFilter object)` Returns the result of interpreting the object as an instance of 'And Filter'.
    `T` | `caseAssignee(Assignee object)` Returns the result of interpreting the object as an instance of 'Assignee'.
    `T` | `caseClassFilter(ClassFilter object)` Returns the result of interpreting the object as an instance of 'Class Filter'.
    `T` | `caseClassPermission(ClassPermission object)` Returns the result of interpreting the object as an instance of 'Class Permission'.
    `T` | `caseCombinedFilter(CombinedFilter object)` Returns the result of interpreting the object as an instance of 'Combined Filter'.
    `T` | `caseDirectory(Directory object)` Returns the result of interpreting the object as an instance of 'Directory'.
    `T` | `caseExpressionFilter(ExpressionFilter object)` Returns the result of interpreting the object as an instance of 'Expression Filter'.
    `T` | `caseFilterPermission(FilterPermission object)` Returns the result of interpreting the object as an instance of 'Filter Permission'.
    `T` | `caseGroup(Group object)` Returns the result of interpreting the object as an instance of 'Group'.
    `T` | `caseLinkedFilter(LinkedFilter object)` Returns the result of interpreting the object as an instance of 'Linked Filter'.
    `T` | `caseModelElement(ModelElement object)` Returns the result of interpreting the object as an instance of 'Model Element'.
    `T` | `caseNotFilter(NotFilter object)` Returns the result of interpreting the object as an instance of 'Not Filter'.
    `T` | `caseObjectFilter(ObjectFilter object)` Returns the result of interpreting the object as an instance of 'Object Filter'.
    `T` | `caseObjectPermission(ObjectPermission object)` Returns the result of interpreting the object as an instance of 'Object Permission'.
    `T` | `caseOrFilter(OrFilter object)` Returns the result of interpreting the object as an instance of 'Or Filter'.
    `T` | `casePackageFilter(PackageFilter object)` Returns the result of interpreting the object as an instance of 'Package Filter'.
    `T` | `casePackagePermission(PackagePermission object)` Returns the result of interpreting the object as an instance of 'Package Permission'.
    `T` | `casePermission(Permission object)` Returns the result of interpreting the object as an instance of 'Permission'.
    `T` | `casePermissionFilter(PermissionFilter object)` Returns the result of interpreting the object as an instance of 'Permission Filter'.
    `T` | `caseRealm(Realm object)` Returns the result of interpreting the object as an instance of 'Realm'.
    `T` | `caseResourceFilter(ResourceFilter object)` Returns the result of interpreting the object as an instance of 'Resource Filter'.
    `T` | `caseResourcePermission(ResourcePermission object)` Returns the result of interpreting the object as an instance of 'Resource Permission'.
    `T` | `caseRole(Role object)` Returns the result of interpreting the object as an instance of 'Role'.
    `T` | `caseSecurityElement(SecurityElement object)` Returns the result of interpreting the object as an instance of 'Element'.
    `T` | `caseSecurityItem(SecurityItem object)` Returns the result of interpreting the object as an instance of 'Item'.
    `T` | `caseUser(User object)` Returns the result of interpreting the object as an instance of 'User'.
    `T` | `caseUserPassword(UserPassword object)` Returns the result of interpreting the object as an instance of 'User Password'.
    `T` | `defaultCase(EObject object)` Returns the result of interpreting the object as an instance of 'EObject'.
    `protected T` | `doSwitch(EClass theEClass, EObject theEObject)` Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
    `T` | `doSwitch(EObject theEObject)` Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
    `protected T` | `doSwitch(int classifierID, EObject theEObject)` Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### modelPackage

          protected static SecurityPackage modelPackage

      The cached model package
      Generated

  - ### Constructor Detail

    - #### SecuritySwitch

          public SecuritySwitch()

      Creates an instance of the switch.
      Generated

  - ### Method Detail

    - #### doSwitch

          public T doSwitch(EObject theEObject)

      Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
      Returns:
        the first non-null result returned by a `caseXXX` call.
      Generated

    - #### doSwitch

          protected T doSwitch(EClass theEClass,
                               EObject theEObject)

      Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
      Returns:
        the first non-null result returned by a `caseXXX` call.
      Generated

    - #### doSwitch

          protected T doSwitch(int classifierID,
                               EObject theEObject)

      Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
      Returns:
        the first non-null result returned by a `caseXXX` call.
      Generated

    - #### caseSecurityElement

          public T caseSecurityElement(SecurityElement object)

      Returns the result of interpreting the object as an instance of 'Element'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Element'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseRealm

          public T caseRealm(Realm object)

      Returns the result of interpreting the object as an instance of 'Realm'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Realm'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseDirectory

          public T caseDirectory(Directory object)

      Returns the result of interpreting the object as an instance of 'Directory'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Directory'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseSecurityItem

          public T caseSecurityItem(SecurityItem object)

      Returns the result of interpreting the object as an instance of 'Item'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Item'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseRole

          public T caseRole(Role object)

      Returns the result of interpreting the object as an instance of 'Role'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Role'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseAssignee

          public T caseAssignee(Assignee object)

      Returns the result of interpreting the object as an instance of 'Assignee'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Assignee'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseGroup

          public T caseGroup(Group object)

      Returns the result of interpreting the object as an instance of 'Group'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Group'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseUser

          public T caseUser(User object)

      Returns the result of interpreting the object as an instance of 'User'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'User'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseUserPassword

          public T caseUserPassword(UserPassword object)

      Returns the result of interpreting the object as an instance of 'User Password'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'User Password'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### casePermission

          public T casePermission(Permission object)

      Returns the result of interpreting the object as an instance of 'Permission'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Permission'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseClassPermission

          public T caseClassPermission(ClassPermission object)

      Returns the result of interpreting the object as an instance of 'Class Permission'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Class Permission'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### casePackagePermission

          public T casePackagePermission(PackagePermission object)

      Returns the result of interpreting the object as an instance of 'Package Permission'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Package Permission'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseResourcePermission

          public T caseResourcePermission(ResourcePermission object)

      Returns the result of interpreting the object as an instance of 'Resource Permission'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Resource Permission'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseObjectPermission

          public T caseObjectPermission(ObjectPermission object)

      Returns the result of interpreting the object as an instance of 'Object Permission'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Object Permission'.
      Since:
        4.2
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseFilterPermission

          public T caseFilterPermission(FilterPermission object)

      Returns the result of interpreting the object as an instance of 'Filter Permission'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Filter Permission'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### casePermissionFilter

          public T casePermissionFilter(PermissionFilter object)

      Returns the result of interpreting the object as an instance of 'Permission Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Permission Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseLinkedFilter

          public T caseLinkedFilter(LinkedFilter object)

      Returns the result of interpreting the object as an instance of 'Linked Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Linked Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### casePackageFilter

          public T casePackageFilter(PackageFilter object)

      Returns the result of interpreting the object as an instance of 'Package Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Package Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseClassFilter

          public T caseClassFilter(ClassFilter object)

      Returns the result of interpreting the object as an instance of 'Class Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Class Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseResourceFilter

          public T caseResourceFilter(ResourceFilter object)

      Returns the result of interpreting the object as an instance of 'Resource Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Resource Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseObjectFilter

          public T caseObjectFilter(ObjectFilter object)

      Returns the result of interpreting the object as an instance of 'Object Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Object Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseExpressionFilter

          public T caseExpressionFilter(ExpressionFilter object)

      Returns the result of interpreting the object as an instance of 'Expression Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Expression Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseCombinedFilter

          public T caseCombinedFilter(CombinedFilter object)

      Returns the result of interpreting the object as an instance of 'Combined Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Combined Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseNotFilter

          public T caseNotFilter(NotFilter object)

      Returns the result of interpreting the object as an instance of 'Not Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Not Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseAndFilter

          public T caseAndFilter(AndFilter object)

      Returns the result of interpreting the object as an instance of 'And Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'And Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseOrFilter

          public T caseOrFilter(OrFilter object)

      Returns the result of interpreting the object as an instance of 'Or Filter'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Or Filter'.
      Since:
        4.3
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### caseModelElement

          public T caseModelElement(ModelElement object)

      Returns the result of interpreting the object as an instance of 'Model Element'. This implementation returns null; returning a non-null result will terminate the switch.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'Model Element'.
      See Also:
        `doSwitch(EObject)`
      Generated

    - #### defaultCase

          public T defaultCase(EObject object)

      Returns the result of interpreting the object as an instance of 'EObject'. This implementation returns null; returning a non-null result will terminate the switch, but this is the last case anyway.
      Parameters:
        `object` - the target of the switch.
      Returns:
        the result of interpreting the object as an instance of 'EObject'.
      See Also:
        `doSwitch(org.eclipse.emf.ecore.EObject)`
      Generated

Copyright (c) 2004-2019 Eike Stepper (Loehne, Germany) 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