org.osgi.framework

Class ServicePermission

public final class ServicePermission extends BasicPermission

A bundle's authority to register or get a service. Permission to get a service is required in order to detect events regarding the service. Untrusted bundles should not be able to detect the presence of certain services unless they have the appropriate ServicePermission to get the specific service.

Version: $Revision: 1.15 $

Field Summary
static StringGET
The action string get (Value is "get").
static StringREGISTER
The action string register (Value is "register").
Constructor Summary
ServicePermission(String name, String actions)
Create a new ServicePermission.
Method Summary
booleanequals(Object obj)
Determines the equalty of two ServicePermission objects.
StringgetActions()
Returns the canonical string representation of the actions.
inthashCode()
Returns the hash code value for this object.
booleanimplies(Permission p)
Determines if a ServicePermission object "implies" the specified permission.
PermissionCollectionnewPermissionCollection()
Returns a new PermissionCollection object for storing ServicePermission objects.

Field Detail

GET

public static final String GET
The action string get (Value is "get").

REGISTER

public static final String REGISTER
The action string register (Value is "register").

Constructor Detail

ServicePermission

public ServicePermission(String name, String actions)
Create a new ServicePermission.

The name of the service is specified as a fully qualified class name.

 ClassName ::= <class name> | <class name ending in ".*">
 
Examples:
 org.osgi.service.http.HttpService
 org.osgi.service.http.*
 org.osgi.service.snmp.*
 

There are two possible actions: get and register. The get permission allows the owner of this permission to obtain a service with this name. The register permission allows the bundle to register a service under that name.

Parameters: name class name actions get,register (canonical order)

Method Detail

equals

public boolean equals(Object obj)
Determines the equalty of two ServicePermission objects. Checks that specified object has the same class name and action as this ServicePermission.

Parameters: obj The object to test for equality.

Returns: true if obj is a ServicePermission, and has the same class name and actions as this ServicePermission object; false otherwise.

getActions

public String getActions()
Returns the canonical string representation of the actions. Always returns present actions in the following order: get, register.

Returns: The canonical string representation of the actions.

hashCode

public int hashCode()
Returns the hash code value for this object.

Returns: Hash code value for this object.

implies

public boolean implies(Permission p)
Determines if a ServicePermission object "implies" the specified permission.

Parameters: p The target permission to check.

Returns: true if the specified permission is implied by this object; false otherwise.

newPermissionCollection

public PermissionCollection newPermissionCollection()
Returns a new PermissionCollection object for storing ServicePermission objects.

Returns: A new PermissionCollection object suitable for storing ServicePermission objects.