Package 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 | Description
    --- | --- | ---
    `protected static SecurityPackage` | `modelPackage` | The cached model package

  - ### Constructor Summary

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | 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​(org.eclipse.emf.ecore.EObject object)` | Returns the result of interpreting the object as an instance of 'EObject'.
    `protected T` | `doSwitch​(int classifierID, org.eclipse.emf.ecore.EObject theEObject)` | Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
    `protected T` | `doSwitch​(org.eclipse.emf.ecore.EClass theEClass, org.eclipse.emf.ecore.EObject theEObject)` | Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
    `T` | `doSwitch​(org.eclipse.emf.ecore.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​(org.eclipse.emf.ecore.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​(org.eclipse.emf.ecore.EClass theEClass,
                               org.eclipse.emf.ecore.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,
                               org.eclipse.emf.ecore.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​(org.eclipse.emf.ecore.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