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.*" are valid, while "*java", "a*b", and "java*" are not valid.
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
,
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.
|
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, @Nullable String actions)
name
- the name of the BasicPermission.actions
- ignored.NullPointerException
- if name
is null
.IllegalArgumentException
- if name
is empty.public boolean equals(@Nullable Object obj)
equals
in class Permission
obj
- the object we are testing for equality with this object.Object.hashCode()
,
HashMap
public String getActions()
getActions
in class Permission
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 boolean implies(Permission p)
More specifically, this method returns true if:
implies
in class Permission
p
- the permission to check against.