java.security

Class BasicPermission

public abstract class BasicPermission extends Permission implements Serializable

This class implements a simple model for named permissions without an associated action list. That is, either the named permission is granted or it is not.

It also supports trailing wildcards to allow the easy granting of permissions in a hierarchical fashion. (For example, the name "org.gnu.*" might grant all permissions under the "org.gnu" permissions hierarchy). The only valid wildcard character is a '*' which matches anything. It must be the rightmost element in the permission name and must follow a '.' or else the Permission name must consist of only a '*'. Any other occurrence of a '*' is not valid.

This class ignores the action list. Subclasses can choose to implement actions on top of this class if desired.

Since: 1.1

See Also: Permission Permissions PermissionCollection RuntimePermission SecurityPermission PropertyPermission AWTPermission NetPermission SecurityManager

UNKNOWN: updated to 1.4

Constructor Summary
BasicPermission(String name)
Create a new instance with the specified permission name.
BasicPermission(String name, String actions)
Create a new instance with the specified permission name.
Method Summary
booleanequals(Object obj)
This method tests to see if this object is equal to the specified Object.
StringgetActions()
This method returns a list of the actions associated with this permission.
inthashCode()
This method returns a hash code for this permission object.
booleanimplies(Permission perm)
This method tests to see if the specified permission is implied by this permission.
PermissionCollectionnewPermissionCollection()
This method returns an instance of PermissionCollection suitable for storing BasicPermission objects.

Constructor Detail

BasicPermission

public BasicPermission(String name)
Create a new instance with the specified permission name. If the name is empty an exception is thrown.

Parameters: name the name of this permission

Throws: NullPointerException if name is null IllegalArgumentException if name is invalid

BasicPermission

public BasicPermission(String name, String actions)
Create a new instance with the specified permission name. If the name is empty, or contains an illegal wildcard character, an exception is thrown. The actions parameter is ignored.

Parameters: name the name of this permission actions ignored

Throws: NullPointerException if name is null IllegalArgumentException if name is invalid

Method Detail

equals

public boolean equals(Object obj)
This method tests to see if this object is equal to the specified Object. This will be true if and only if the specified object meets the following conditions:

Parameters: obj the Object to test for equality

Returns: true if obj is semantically equal to this

getActions

public String getActions()
This method returns a list of the actions associated with this permission. This method always returns the empty string ("") since this class ignores actions.

Returns: the action list

hashCode

public int hashCode()
This method returns a hash code for this permission object. The hash code returned is the value returned by calling the hashCode method on the String that is the name of this permission.

Returns: a hash value for this object

implies

public boolean implies(Permission perm)
This method tests to see if the specified permission is implied by this permission. This will be true if the following conditions are met:

Parameters: perm the Permission object to test against

Returns: true if the specified permission is implied

newPermissionCollection

public PermissionCollection newPermissionCollection()
This method returns an instance of PermissionCollection suitable for storing BasicPermission objects. The collection returned can only store objects of the same type as this. Subclasses which use actions must override this method; but a class with no actions will work fine with this.

Returns: a new empty PermissionCollection object