Package org.osgi.service.condpermadmin
Interface ConditionalPermissionInfo
-
@ProviderType public interface ConditionalPermissionInfo
A list of Permissions guarded by a list of conditions with an access decision. Instances of this interface are obtained from the Conditional Permission Admin service.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
ALLOW
This string is used to indicate that a row in the Conditional Permission Table should return an access decision of "allow" if the conditions are all satisfied and at least one of the permissions is implied.static java.lang.String
DENY
This string is used to indicate that a row in the Conditional Permission Table should return an access decision of "deny" if the conditions are all satisfied and at least one of the permissions is implied.
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description void
delete()
Deprecated.As of 1.1.boolean
equals(java.lang.Object obj)
Determines the equality of twoConditionalPermissionInfo
objects.java.lang.String
getAccessDecision()
Returns the access decision for this Conditional Permission Info.ConditionInfo[]
getConditionInfos()
Returns the Condition Infos for the Conditions that must be satisfied to enable the Permissions.java.lang.String
getEncoded()
Returns the string encoding of thisConditionalPermissionInfo
in a form suitable for restoring thisConditionalPermissionInfo
.java.lang.String
getName()
Returns the name of this Conditional Permission Info.PermissionInfo[]
getPermissionInfos()
Returns the Permission Infos for the Permissions in this Conditional Permission Info.int
hashCode()
Returns the hash code value for this object.java.lang.String
toString()
Returns the string representation of thisConditionalPermissionInfo
.
-
-
-
Field Detail
-
ALLOW
static final java.lang.String ALLOW
This string is used to indicate that a row in the Conditional Permission Table should return an access decision of "allow" if the conditions are all satisfied and at least one of the permissions is implied.- Since:
- 1.1
- See Also:
- Constant Field Values
-
DENY
static final java.lang.String DENY
This string is used to indicate that a row in the Conditional Permission Table should return an access decision of "deny" if the conditions are all satisfied and at least one of the permissions is implied.- Since:
- 1.1
- See Also:
- Constant Field Values
-
-
Method Detail
-
getConditionInfos
ConditionInfo[] getConditionInfos()
Returns the Condition Infos for the Conditions that must be satisfied to enable the Permissions.- Returns:
- The Condition Infos for the Conditions in this Conditional Permission Info.
-
getPermissionInfos
PermissionInfo[] getPermissionInfos()
Returns the Permission Infos for the Permissions in this Conditional Permission Info.- Returns:
- The Permission Infos for the Permissions in this Conditional Permission Info.
-
delete
void delete()
Deprecated.As of 1.1. UseConditionalPermissionAdmin.newConditionalPermissionUpdate()
instead to manage the Conditional Permissions.Removes this Conditional Permission Info from the Conditional Permission Table.Since this method changes the underlying permission table, any
ConditionalPermissionUpdate
s that were created prior to calling this method can no longer be committed.- Throws:
java.lang.UnsupportedOperationException
- If this object was created byConditionalPermissionAdmin.newConditionalPermissionInfo(String)
orConditionalPermissionAdmin.newConditionalPermissionInfo(String, ConditionInfo[] , PermissionInfo[] , String)
or obtained from aConditionalPermissionUpdate
. This method only functions if this object was obtained from one of theConditionalPermissionAdmin
methods deprecated in version 1.1.java.lang.SecurityException
- If the caller does not haveAllPermission
.
-
getName
java.lang.String getName()
Returns the name of this Conditional Permission Info.- Returns:
- The name of this Conditional Permission Info. This can be
null
if this Conditional Permission Info was created without a name.
-
getAccessDecision
java.lang.String getAccessDecision()
Returns the access decision for this Conditional Permission Info.
-
getEncoded
java.lang.String getEncoded()
Returns the string encoding of thisConditionalPermissionInfo
in a form suitable for restoring thisConditionalPermissionInfo
.The encoded format is:
access {conditions permissions} name
where access is the access decision, conditions is zero or moreencoded conditions
, permissions is one or moreencoded permissions
and name is the name of theConditionalPermissionInfo
.name is optional. If name is present in the encoded string, it must quoted, beginning and ending with
"
. The name value must be encoded for proper parsing. Specifically, the"
,\
, carriage return, and line feed characters must be escaped using\"
,\\
,\r
, and\n
, respectively.The encoded string contains no leading or trailing whitespace characters. A single space character is used between access and
{
and between}
and name, if name is present. All encoded conditions and permissions are separated by a single space character.- Returns:
- The string encoding of this
ConditionalPermissionInfo
. - Since:
- 1.1
-
toString
java.lang.String toString()
Returns the string representation of thisConditionalPermissionInfo
. The string is created by calling thegetEncoded
method on thisConditionalPermissionInfo
.- Overrides:
toString
in classjava.lang.Object
- Returns:
- The string representation of this
ConditionalPermissionInfo
. - Since:
- 1.1
-
equals
boolean equals(java.lang.Object obj)
Determines the equality of twoConditionalPermissionInfo
objects. This method checks that specified object has the same access decision, conditions, permissions and name as thisConditionalPermissionInfo
object.- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- The object to test for equality with thisConditionalPermissionInfo
object.- Returns:
true
ifobj
is aConditionalPermissionInfo
, and has the same access decision, conditions, permissions and name as thisConditionalPermissionInfo
object;false
otherwise.- Since:
- 1.1
-
hashCode
int hashCode()
Returns the hash code value for this object.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- A hash code value for this object.
- Since:
- 1.1
-
-