Class EJBRoleRefPermission

  • All Implemented Interfaces:
    java.io.Serializable, java.security.Guard

    public final class EJBRoleRefPermission
    extends java.security.Permission
    Class for Jakarta Enterprise Beans 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 Jakarta Enterprise Bean 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.

    See Also:
    Permission, Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      EJBRoleRefPermission​(java.lang.String name, java.lang.String actions)
      Creates a new EJBRoleRefPermission with the specified name and actions.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object other)
      Checks two EJBRoleRefPermission objects for equality.
      java.lang.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​(java.security.Permission permission)
      Determines if the argument Permission is "implied by" this EJBRoleRefPermission.
      private void readObject​(java.io.ObjectInputStream inputStream)
      readObject reads the serialized fields from the input stream and uses them to restore the permission.
      private void writeObject​(java.io.ObjectOutputStream outputStream)
      writeObject is used to establish the values of the serialized fields before they are written to the output stream and need not be implemented if the values of the serialized fields are always available and up to date.
      • 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
    • Field Detail

      • serialPersistentFields

        private static final java.io.ObjectStreamField[] serialPersistentFields
        The serialized fields of this permission are defined below. Whether or not the serialized fields correspond to actual (private) fields is an implementation decision.
      • actions

        private final java.lang.String actions
      • hashCodeValue

        private transient int hashCodeValue
    • Constructor Detail

      • EJBRoleRefPermission

        public EJBRoleRefPermission​(java.lang.String name,
                                    java.lang.String actions)
        Creates a new EJBRoleRefPermission with the specified name and actions.
        Parameters:
        name - the ejb-name that identifies the Jakarta Enterprise Bean 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 Jakarta Enterprise Bean 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​(java.lang.Object other)
        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) AND P2.implies(P1).

        Specified by:
        equals in class java.security.Permission
        Parameters:
        other - the EJBRoleRefPermission object being tested for equality with this EJBRoleRefPermission.
        Returns:
        true if the argument EJBRoleRefPermission object is equivalent to this EJBRoleRefPermission.
      • getActions

        public java.lang.String getActions()
        Returns a canonical String representation of the actions of this EJBRoleRefPermission.
        Specified by:
        getActions in class java.security.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 java.security.Permission
        Returns:
        the integer hash code value for this object.
      • implies

        public boolean implies​(java.security.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 java.security.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.
      • readObject

        private void readObject​(java.io.ObjectInputStream inputStream)
                         throws java.io.IOException,
                                java.lang.ClassNotFoundException
        readObject reads the serialized fields from the input stream and uses them to restore the permission. This method need not be implemented if establishing the values of the serialized fields (as is done by defaultReadObject) is sufficient to initialize the permission.
        Parameters:
        inputStream - The stream from which the fields are read
        Throws:
        java.lang.ClassNotFoundException - If the class of an object couldn't be found
        java.io.IOException - If an I/O error occurs
      • writeObject

        private void writeObject​(java.io.ObjectOutputStream outputStream)
                          throws java.io.IOException
        writeObject is used to establish the values of the serialized fields before they are written to the output stream and need not be implemented if the values of the serialized fields are always available and up to date. The serialized fields are written to the output stream in the same form as they would be written by defaultWriteObject.
        Parameters:
        outputStream - The stream to which the serialized fields are written
        Throws:
        java.io.IOException - If an I/O error occurs while writing to the underlying stream