Class BasicPermission
- All Implemented Interfaces:
Serializable, Guard
- Direct Known Subclasses:
AttachPermission, AudioPermission, AuthPermission, AWTPermission, DelegationPermission, FlightRecorderPermission, InquireSecContextPermission, JDIPermission, LinkPermission, LoggingPermission, ManagementPermission, MBeanServerPermission, MBeanTrustPermission, NetPermission, NetworkPermission, PropertyPermission, ReflectPermission, RuntimePermission, SecurityPermission, SerializablePermission, SQLPermission, SSLPermission, SubjectDelegationPermission
BasicPermission class extends the Permission class, and
can be used as the base class for permissions that want to
follow the same naming convention as BasicPermission.
The name for a BasicPermission is the name of the given permission
(for example, "exit",
"setFactory", "print.queueJob", etc.). The naming
convention follows the hierarchical property naming convention.
An asterisk may appear by itself, or if immediately preceded by a "."
may appear at the end of the name, to signify a wildcard match.
For example, "*" and "java.*" signify a wildcard match, while "*java", "a*b",
and "java*" do not.
The action string (inherited from Permission) is unused.
Thus, BasicPermission is commonly used as the base class for
"named" permissions
(ones that contain a name but no actions list; you either have the
named permission or you don't.)
Subclasses may implement actions on top of BasicPermission,
if desired.
- Since:
- 1.2
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionBasicPermission(String name) Creates a newBasicPermissionwith the specified name.BasicPermission(String name, String actions) Creates a newBasicPermissionobject with the specified name. -
Method Summary
Modifier and TypeMethodDescriptionbooleanChecks twoBasicPermissionobjects for equality.Returns the canonical string representation of the actions, which currently is the empty string "", since there are no actions for aBasicPermission.inthashCode()Returns the hash code value for this object.booleanChecks if the specified permission is "implied" by this object.Returns a newPermissionCollectionobject for storingBasicPermissionobjects.Methods declared in class Permission
checkGuard, getName, toStringMethods declared in class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(long time) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.final voidwait(long time, int frac) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.
-
Constructor Details
-
BasicPermission
Creates a newBasicPermissionwith the specified name. Name is the symbolic name of the permission, such as "setFactory", "print.queueJob", or "topLevelWindow", etc.- Parameters:
name- the name of theBasicPermission.- Throws:
NullPointerException- ifnameisnull.IllegalArgumentException- ifnameis empty.
-
BasicPermission
Creates a newBasicPermissionobject with the specified name. The name is the symbolic name of theBasicPermission, and the actionsStringis currently unused.- Parameters:
name- the name of theBasicPermission.actions- ignored.- Throws:
NullPointerException- ifnameisnull.IllegalArgumentException- ifnameis empty.
-
-
Method Details
-
implies
Checks if the specified permission is "implied" by this object.More specifically, this method returns
trueif:-
p's class is the same as this object's class, and -
p's name equals or (in the case of wildcards) is implied by this object's name. For example, "a.b.*" implies "a.b.c".
- Specified by:
impliesin classPermission- Parameters:
p- the permission to check against.- Returns:
trueif the passed permission is equal to or implied by this permission,falseotherwise.
-
-
equals
Checks twoBasicPermissionobjects for equality. Checks thatobj's class is the same as this object's class and has the same name as this object.- Specified by:
equalsin classPermission- Parameters:
obj- the object we are testing for equality with this object.- Returns:
trueifobj's class is the same as this object's class and has the same name as thisBasicPermissionobject,falseotherwise.- See Also:
-
hashCode
public int hashCode()Returns the hash code value for this object. The hash code used is the hash code of the name, that is,getName().hashCode(), wheregetNameis from thePermissionsuperclass.- Specified by:
hashCodein classPermission- Returns:
- the hash code value for this object
- See Also:
-
getActions
Returns the canonical string representation of the actions, which currently is the empty string "", since there are no actions for aBasicPermission.- Specified by:
getActionsin classPermission- Returns:
- the empty string "".
-
newPermissionCollection
Returns a newPermissionCollectionobject for storingBasicPermissionobjects.BasicPermissionobjects must be stored in a manner that allows them to be inserted in any order, but that also enables thePermissionCollection.implies(Permission)method to be implemented in an efficient (and consistent) manner.- Overrides:
newPermissionCollectionin classPermission- Returns:
- a new
PermissionCollectionobject suitable for storingBasicPermissionobjects.
-