Package org.apache.commons.daemon
Class DaemonPermission
java.lang.Object
java.security.Permission
org.apache.commons.daemon.DaemonPermission
- All Implemented Interfaces:
Serializable
,Guard
Represents the permissions to control and query the status of
a
Daemon
. A DaemonPermission
consists of a
target name and a list of actions associated with it.
In this specification version the only available target name for this permission is "control", but further releases may add more target names to fine-tune the access that needs to be granted to the caller.
Actions are defined by a string of comma-separated values, as shown in the table below. The empty string implies no permission at all, while the special "*" value implies all permissions for the given name:
Target"Name | Action | Description |
---|---|---|
"control" | "start" |
The permission to call the start() method in an instance
of a DaemonController interface.
|
"stop" |
The permission to call the stop() method in an instance
of a DaemonController interface.
|
|
"shutdown" |
The permission to call the shutdown() method in an instance
of a DaemonController interface.
|
|
"reload" |
The permission to call the reload() method in an instance
of a DaemonController interface.
|
|
"*" | The special wildcard action implies all above-mentioned action. This is equal to construct a permission with the "start, stop, shutdown, reload" list of actions. |
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected static final String
The target name when associated with control actions ("control").protected static final String
The action name associated with the permission to call theDaemonController.reload()
method.protected static final String
The action name associated with the permission to call theDaemonController.shutdown()
method.protected static final String
The action name associated with the permission to call theDaemonController.start()
method.protected static final String
The action name associated with the permission to call theDaemonController.stop()
method.protected static final int
The action mask associated with the permission to call theDaemonController.reload()
method.protected static final int
The action mask associated with the permission to call theDaemonController.shutdown()
method.protected static final int
The action mask associated with the permission to call theDaemonController.start()
method.protected static final int
The action mask associated with the permission to call theDaemonController.stop()
method.protected static final int
The target type when associated with control actions.protected static final String
The "wildcard" action implying all actions for the given target name. -
Constructor Summary
ConstructorDescriptionDaemonPermission
(String target) Creates a newDaemonPermission
instance with a specified permission name.DaemonPermission
(String target, String actions) Creates a newDaemonPermission
instance with a specified permission name and a specified list of actions. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Checks if a specified object equalsDaemonPermission
.Returns the list of actions permitted by this instance ofDaemonPermission
in its canonical form.int
hashCode()
Returns the hash code for thisDaemonPermission
instance.boolean
implies
(Permission permission) Checks if thisDaemonPermission
implies anotherPermission
.toString()
Returns aString
representation of this instance.Methods inherited from class java.security.Permission
checkGuard, getName, newPermissionCollection
-
Field Details
-
CONTROL
The target name when associated with control actions ("control").- See Also:
-
TYPE_CONTROL
The target type when associated with control actions.- See Also:
-
CONTROL_START
The action name associated with the permission to call theDaemonController.start()
method.- See Also:
-
CONTROL_STOP
The action name associated with the permission to call theDaemonController.stop()
method.- See Also:
-
CONTROL_SHUTDOWN
The action name associated with the permission to call theDaemonController.shutdown()
method.- See Also:
-
CONTROL_RELOAD
The action name associated with the permission to call theDaemonController.reload()
method.- See Also:
-
MASK_CONTROL_START
The action mask associated with the permission to call theDaemonController.start()
method.- See Also:
-
MASK_CONTROL_STOP
The action mask associated with the permission to call theDaemonController.stop()
method.- See Also:
-
MASK_CONTROL_SHUTDOWN
The action mask associated with the permission to call theDaemonController.shutdown()
method.- See Also:
-
MASK_CONTROL_RELOAD
The action mask associated with the permission to call theDaemonController.reload()
method.- See Also:
-
WILDCARD
The "wildcard" action implying all actions for the given target name.- See Also:
-
-
Constructor Details
-
DaemonPermission
Creates a newDaemonPermission
instance with a specified permission name.This constructor will create a new
DaemonPermission
instance that will not grant any permission to the caller.- Parameters:
target
- The target name of this permission.- Throws:
IllegalArgumentException
- If the specified target name is not supported.
-
DaemonPermission
Creates a newDaemonPermission
instance with a specified permission name and a specified list of actions.- Parameters:
target
- The target name of this permission.actions
- The list of actions permitted by this permission.- Throws:
IllegalArgumentException
- If the specified target name is not supported, or the specified list of actions includes an invalid value.
-
-
Method Details
-
getActions
Returns the list of actions permitted by this instance ofDaemonPermission
in its canonical form.- Specified by:
getActions
in classPermission
- Returns:
- The canonicalized list of actions.
-
hashCode
Returns the hash code for thisDaemonPermission
instance.- Specified by:
hashCode
in classPermission
- Returns:
- An hash code value.
-
equals
Checks if a specified object equalsDaemonPermission
.- Specified by:
equals
in classPermission
- Returns:
- true or false whether the specified object equals
this
DaemonPermission
instance or not.
-
implies
Checks if thisDaemonPermission
implies anotherPermission
.- Specified by:
implies
in classPermission
- Returns:
- true or false whether the specified permission
is implied by this
DaemonPermission
instance or not.
-
toString
Returns aString
representation of this instance.- Overrides:
toString
in classPermission
- Returns:
- A
String
representing thisDaemonPermission
instance.
-