Contents | Package | Class | Tree | Deprecated | Index | Help Java 1.2 Beta 3
PREV | NEXT SHOW LISTS | HIDE LISTS

Class java.security.UnresolvedPermission

java.lang.Object
    |
    +----java.security.Permission
            |
            +----java.security.UnresolvedPermission

public final class UnresolvedPermission
extends Permission
implements Serializable
The UnresolvedPermission class is used to hold Permissions that were "unresolved" when the Policy was initialized. An unresolved permission is one whose actual Permission class does not yet exist at the time the Policy is initialized (see below).

The policy for a Java runtime (specifying which permissions are available for code from various principals) is represented by a Policy object. Whenever a Policy is initialized or refreshed, Permission objects of appropriate classes are created for all permissions allowed by the Policy.

Many permission class types referenced by the policy configuration are ones that exist locally (i.e., ones that can be found on CLASSPATH). Objects for such permissions can be instantiated during Policy initialization. For example, it is always possible to instantiate a java.io.FilePermission, since the FilePermission class is found on the CLASSPATH.

Other permission classes may not yet exist during Policy initialization. For example, a referenced permission class may be in a JAR file that will later be loaded. For each such class, an UnresolvedPermission is instantiated. Thus, an UnresolvedPermission is essentially a "placeholder" containing information about the permission.

Later, when code calls AccessController.checkPermission on a permission of a type that was previously unresolved, but whose class has since been loaded, previously-unresolved permissions of that type are "resolved". That is, for each such UnresolvedPermission, a new object of the appropriate class type is instantiated, based on the information in the UnresolvedPermission. This new object replaces the UnresolvedPermission, which is removed.

See Also:
Permission, Permissions, PermissionCollection, Policy

Method Summary
boolean  equals(Object obj)
Checks two UnresolvedPermission objects for equality.
String  getActions()
Returns the canonical string representation of the actions, which currently is the empty string "", since there are no actions for an UnresolvedPermission.
int  hashCode()
Returns the hash code value for this object.
boolean  implies(Permission p)
This method always returns false for unresolved permissions.
PermissionCollection  newPermissionCollection()
Returns a new PermissionCollection object for storing UnresolvedPermission objects.
String  toString()
Returns a string describing this UnresolvedPermission.
 
Methods inherited from class java.security.Permission
 checkGuard, equals, getActions, getName, hashCode, implies, newPermissionCollection, toString
 
Methods inherited from class java.lang.Object
 clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

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.
Parameters:
p - the permission to check against.
Returns:
false.
Overrides:
implies in class Permission

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 public keys as this object.
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 public keys as this object.
Overrides:
equals in class Permission

hashCode

public int hashCode()
Returns the hash code value for this object.
Returns:
a hash code value for this object.
Overrides:
hashCode in class Permission

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.
Returns:
the empty string "".
Overrides:
getActions in class Permission

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")'.
Returns:
information about this UnresolvedPermission.
Overrides:
toString in class Permission

newPermissionCollection

public PermissionCollection newPermissionCollection()
Returns a new PermissionCollection object for storing UnresolvedPermission objects.

Returns:
a new PermissionCollection object suitable for storing UnresolvedPermissions.
Overrides:
newPermissionCollection in class Permission

Contents | Package | Class | Tree | Deprecated | Index | Help Java 1.2 Beta 3
PREV | NEXT SHOW LISTS | HIDE LISTS

Submit a bug or feature
Submit comments/suggestions about new javadoc look.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.