public abstract class BasicPermission extends Permission implements Serializable
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.
Permission
,
Permissions
,
PermissionCollection
,
SecurityManager
,
Serialized FormConstructor and Description |
---|
BasicPermission(String name)
Creates a new BasicPermission with the specified name.
|
BasicPermission(String name,
String actions)
Creates a new BasicPermission object with the specified name.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
Checks two BasicPermission 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
a BasicPermission.
|
int |
hashCode()
Returns the hash code value for this object.
|
boolean |
implies(Permission p)
Checks if the specified permission is "implied" by
this object.
|
PermissionCollection |
newPermissionCollection()
Returns a new PermissionCollection object for storing BasicPermission
objects.
|
checkGuard, getName, toString
public BasicPermission(String name)
name
- the name of the BasicPermission.NullPointerException
- if name
is null
.IllegalArgumentException
- if name
is empty.public BasicPermission(String name, String actions)
name
- the name of the BasicPermission.actions
- ignored.NullPointerException
- if name
is null
.IllegalArgumentException
- if name
is empty.public boolean implies(Permission p)
More specifically, this method returns true if:
implies
in class Permission
p
- the permission to check against.public boolean equals(Object obj)
equals
in class Permission
obj
- the object we are testing for equality with this object.Object.hashCode()
,
HashMap
public int hashCode()
getName().hashCode()
, where getName
is
from the Permission superclass.hashCode
in class Permission
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
public String getActions()
getActions
in class Permission
public PermissionCollection newPermissionCollection()
BasicPermission objects must be stored in a manner that allows them
to be inserted in any order, but that also enables the
PermissionCollection implies
method
to be implemented in an efficient (and consistent) manner.
newPermissionCollection
in class Permission
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2021, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.