javax.security.jacc

## Class EJBRoleRefPermission

- java.lang.Object
- - java.security.Permission
  - - javax.security.jacc.EJBRoleRefPermission

- All Implemented Interfaces:
    Serializable, Guard

      public final class EJBRoleRefPermission
      extends Permission

  Class for EJB `isCallerInRole (String reference)` permissions. An EJBRoleRefPermission is a named permission and has actions.

  The name of an EJBRoleRefPermission contains the value of the ejb-name element in the application's deployment descriptor that identifies the EJB in whose context the permission is being evalutated.

  the actions of an EJBRoleRefPermission identifies the role reference to which the permission applies. An EJBRoleRefPermission is checked to determine if the subject is a member of the role identified by the reference.

  Implementations of this class MAY implement newPermissionCollection or inherit its implementation from the super class.

  Author:
    Ron Monzillo, Gary Ellison
  See Also:
    `Permission`, Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `EJBRoleRefPermission(String name, String actions)` Creates a new EJBRoleRefPermission with the specified name and actions.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object o)` Checks two EJBRoleRefPermission objects for equality.
    `String` | `getActions()` Returns a canonical String representation of the actions of this EJBRoleRefPermission.
    `int` | `hashCode()` Returns the hash code value for this EJBRoleRefPermission.
    `boolean` | `implies(Permission permission)` Determines if the argument Permission is "implied by" this EJBRoleRefPermission.

    - ### Methods inherited from class java.security.Permission

      `checkGuard, getName, newPermissionCollection, toString`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### EJBRoleRefPermission

          public EJBRoleRefPermission(String name,
                              String actions)

      Creates a new EJBRoleRefPermission with the specified name and actions.
      Parameters:
        `name` - the ejb-name that identifies the EJB in whose context the role references are to be evaluated.

        `actions` - identifies the role reference to which the permission pertains. The role reference is scoped to the EJB identified in the name parameter. The value of the role reference must not be `null` or the empty string.

  - ### Method Detail

    - #### equals

          public boolean equals(Object o)

      Checks two EJBRoleRefPermission objects for equality. EJBRoleRefPermission objects are equivalent if they have case equivalent name and actions values.

      Two Permission objects, P1 and P2, are equivalent if and only if P1.implies(P2) && P2.implies(P1).

      Specified by:
        `equals` in class `Permission`
      Parameters:
        `o` - the EJBRoleRefPermission object being tested for equality with this EJBRoleRefPermission.

      Returns:
        true if the argument EJBRoleRefPermission object is equivalent to this EJBRoleRefPermission.

    - #### getActions

          public String getActions()

      Returns a canonical String representation of the actions of this EJBRoleRefPermission.

      Specified by:
        `getActions` in class `Permission`
      Returns:
        a String containing the canonicalized actions of this EJBRoleRefPermission.

    - #### hashCode

          public int hashCode()

      Returns the hash code value for this EJBRoleRefPermission. The properties of the returned hash code must be as follows:

      - During the lifetime of a Java application, the hashCode method must return the same integer value, every time it is called on a EJBRoleRefPermission object. The value returned by hashCode for a particular EJBRoleRefPermission need not remain consistent from one execution of an application to another.
      - If two EJBRoleRefPermission objects are equal according to the equals method, then calling the hashCode method on each of the two Permission objects must produce the same integer result (within an application).

      Specified by:
        `hashCode` in class `Permission`
      Returns:
        the integer hash code value for this object.

    - #### implies

          public boolean implies(Permission permission)

      Determines if the argument Permission is "implied by" this EJBRoleRefPermission. For this to be the case,

  - The argument must be an instanceof EJBRoleRefPermission
  - with name equivalent to that of this EJBRoleRefPermission, and
  - with the role reference equivalent to that of this EJBRoleRefPermission applies.

    The name and actions comparisons described above are case sensitive.

Specified by:
  `implies` in class `Permission`
Parameters:
  `permission` - "this" EJBRoleRefPermission is checked to see if it implies the argument permission.

Returns:
  true if the specified permission is implied by this object, false if not.

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.