public class ATPermission extends PeripheralPermission
ATPermission
class defines permissions for AT device access.
A ATPermission
permission has a target name and a list of actions.
The target name contains hardware addressing information. The format is the one defined for the base PeripheralPermission
class
with the following addition:
{channel-spec}
{channel-spec}
string (described in PeripheralPermission
) is
the decimal string representation of a channel number as may be returned by a call to
ATDeviceConfig.getChannelNumber()
. The characters in the string must all be decimal digits.
open
and data
. Their meaning is defined as follows:
open
PeripheralManager.open(java.lang.Class<P>, com.oracle.deviceaccess.PeripheralConfig<? super P>)
)data
ATDevice.openDataConnection(java.lang.String, com.oracle.deviceaccess.atcmd.CommandResponseHandler, com.oracle.deviceaccess.atcmd.DataConnectionHandler)
)powermanage
PowerManaged
)Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DATA
The
data action. |
OPEN, POWER_MANAGE
Constructor and Description |
---|
ATPermission(java.lang.String name)
Constructs a new
ATPermission with the specified target name and implicit open action. |
ATPermission(java.lang.String name,
java.lang.String actions)
Constructs a new
ATPermission instance with the specified target name and action list. |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj)
Checks two
ATPermission objects for equality. |
java.lang.String |
getActions()
Returns the list of possible actions in the following order:
open or data . |
int |
hashCode()
Returns the hash code value for this object.
|
boolean |
implies(java.security.Permission permission)
Checks if this
ATPermission object "implies" the specified permission. |
java.security.PermissionCollection |
newPermissionCollection()
Returns a new
PermissionCollection for storing ATPermission objects. |
public static final java.lang.String DATA
data
action.public ATPermission(java.lang.String name)
ATPermission
with the specified target name and implicit open
action.name
- the target name (as defined above).java.lang.NullPointerException
- if name
is null
.Permission.getName()
public ATPermission(java.lang.String name, java.lang.String actions)
ATPermission
instance with the specified target name and action list.name
- the target name (as defined above).actions
- comma-separated list of AT device operations: open
or data
.java.lang.NullPointerException
- if name
is null
.java.lang.IllegalArgumentException
- if name
is empty or if actions is null
, empty or contains an action other than the
specified possible actions.public boolean equals(java.lang.Object obj)
ATPermission
objects for equality.equals
in class PeripheralPermission
obj
- the object to test for equality with this object.true
if obj
is a ATPermission
and has the same target name and actions as this
ATPermission
object.public java.lang.String getActions()
open
or data
.getActions
in class PeripheralPermission
public int hashCode()
hashCode
in class PeripheralPermission
public boolean implies(java.security.Permission permission)
ATPermission
object "implies" the specified permission.
More specifically, this method returns true
if:
permission
is an instance of ATPermission
, and
permission
's actions are a proper subset of this action list, and
permission
's peripheral ID, name or range thereof
is included in this peripheral ID or name range, whichever is defined.
implies
in class PeripheralPermission
permission
- the permission to check against.true
if the specified permission is not null
and is implied by this object, false
otherwise.public java.security.PermissionCollection newPermissionCollection()
PermissionCollection
for storing ATPermission
objects.
ATPermission
objects must be stored in a manner that allows them to be inserted into the collection in
any order, but that also enables the PermissionCollection
implies method to be implemented in an
efficient (and consistent) manner.
If null
is returned, then the caller of this method is free to store permissions of this type in any
PermissionCollection they choose (one that uses a Hashtable
, one that uses a Vector
, etc).
newPermissionCollection
in class PeripheralPermission
PermissionCollection
suitable for storing ATPermission
objects, or null
if
one is not defined.Copyright © 2012, 2013, Oracle and/or its affiliates. All rights reserved.
Legal Notices