Class UnresolvedPermission

java.lang.Object
java.security.Permission
java.security.UnresolvedPermission
All Implemented Interfaces:
Serializable, Guard

public final class UnresolvedPermission extends Permission implements Serializable
The UnresolvedPermission class used to hold Permissions that were "unresolved" when the Policy was initialized. Installing a system-wide Policy object is no longer supported.
Since:
1.2
See Also:
  • Constructor Details

    • UnresolvedPermission

      public UnresolvedPermission(String type, String name, String actions, Certificate[] certs)
      Creates a new UnresolvedPermission containing the permission information needed later to actually create a Permission of the specified class, when the permission is resolved.
      Parameters:
      type - the class name of the Permission class that will be created when this unresolved permission is resolved.
      name - the name of the permission.
      actions - the actions of the permission.
      certs - the certificates the permission's class was signed with. This is a list of certificate chains, where each chain is composed of a signer certificate and optionally its supporting certificate chain. Each chain is ordered bottom-to-top (i.e., with the signer certificate first and the (root) certificate authority last). The signer certificates are copied from the array. Subsequent changes to the array will not affect this UnresolvedPermission.
  • Method Details

    • implies

      public boolean implies(Permission p)
      This method always returns false for unresolved permissions. That is, an UnresolvedPermission is never considered to imply another permission.
      Specified by:
      implies in class Permission
      Parameters:
      p - the permission to check against.
      Returns:
      false.
    • equals

      public boolean equals(Object obj)
      Checks two UnresolvedPermission objects for equality. Checks that obj is an UnresolvedPermission, and has the same type (class) name, permission name, actions, and certificates as this object.

      To determine certificate equality, this method only compares actual signer certificates. Supporting certificate chains are not taken into consideration by this method.

      Specified by:
      equals in class Permission
      Parameters:
      obj - the object we are testing for equality with this object.
      Returns:
      true if obj is an UnresolvedPermission, and has the same type (class) name, permission name, actions, and certificates as this object.
      See Also:
    • hashCode

      public int hashCode()
      Returns the hash code value for this object.
      Specified by:
      hashCode in class Permission
      Returns:
      the hash code value for this object
      See Also:
    • getActions

      public String getActions()
      Returns the canonical string representation of the actions, which currently is the empty string "", since there are no actions for an UnresolvedPermission. That is, the actions for the permission that will be created when this UnresolvedPermission is resolved may be non-null, but an UnresolvedPermission itself is never considered to have any actions.
      Specified by:
      getActions in class Permission
      Returns:
      the empty string "".
    • getUnresolvedType

      public String getUnresolvedType()
      Get the type (class name) of the underlying permission that has not been resolved.
      Returns:
      the type (class name) of the underlying permission that has not been resolved
      Since:
      1.5
    • getUnresolvedName

      public String getUnresolvedName()
      Get the target name of the underlying permission that has not been resolved.
      Returns:
      the target name of the underlying permission that has not been resolved, or null, if there is no target name
      Since:
      1.5
    • getUnresolvedActions

      public String getUnresolvedActions()
      Get the actions for the underlying permission that has not been resolved.
      Returns:
      the actions for the underlying permission that has not been resolved, or null if there are no actions
      Since:
      1.5
    • getUnresolvedCerts

      public Certificate[] getUnresolvedCerts()
      Get the signer certificates (without any supporting chain) for the underlying permission that has not been resolved.
      Returns:
      the signer certificates for the underlying permission that has not been resolved, or null, if there are no signer certificates. Returns a new array each time this method is called.
      Since:
      1.5
    • toString

      public String toString()
      Returns a string describing this UnresolvedPermission. The convention is to specify the class name, the permission name, and the actions, in the following format: '(unresolved "ClassName" "name" "actions")'.
      Overrides:
      toString in class Permission
      Returns:
      information about this UnresolvedPermission.
    • newPermissionCollection

      public PermissionCollection newPermissionCollection()
      Returns a new PermissionCollection object for storing UnresolvedPermission objects.
      Overrides:
      newPermissionCollection in class Permission
      Returns:
      a new PermissionCollection object suitable for storing UnresolvedPermissions.