The Framework returns a ServiceRegistration
object when a BundleContext.registerService
method invocation is successful. The ServiceRegistration
object is for the private use of the registering bundle and should not be shared with other bundles.
The ServiceRegistration
object may be used to update the properties of the service or to unregister the service.
Definition at line 39 of file ServiceRegistration.java.
Public Member Functions | |
ServiceReference | getReference () |
Returns a ServiceReference object for a service being registered. | |
void | setProperties (Dictionary properties) |
Updates the properties associated with a service. | |
void | unregister () |
Unregisters a service. |
ServiceReference org.osgi.framework.ServiceRegistration.getReference | ( | ) |
Returns a ServiceReference
object for a service being registered.
The ServiceReference
object may be shared with other bundles.
java.lang.IllegalStateException | If this ServiceRegistration object has already been unregistered. |
ServiceReference
object. Implemented in org.knopflerfish.framework.ServiceRegistrationImpl.
Referenced by org.knopflerfish.framework.Services.register().
void org.osgi.framework.ServiceRegistration.setProperties | ( | Dictionary | properties | ) |
Updates the properties associated with a service.
The Constants#OBJECTCLASS and Constants#SERVICE_ID keys cannot be modified by this method. These values are set by the Framework when the service is registered in the OSGi environment.
The following steps are required to modify service properties:
properties | The properties for this service. See Constants for a list of standard service property keys. Changes should not be made to this object after calling this method. To update the service's properties this method should be called again. |
IllegalStateException | If this ServiceRegistration object has already been unregistered. | |
IllegalArgumentException | If properties contains case variants of the same key name. |
Implemented in org.knopflerfish.framework.ServiceRegistrationImpl.
void org.osgi.framework.ServiceRegistration.unregister | ( | ) |
Unregisters a service.
Remove a ServiceRegistration
object from the Framework service registry. All ServiceReference
objects associated with this ServiceRegistration
object can no longer be used to interact with the service.
The following steps are required to unregister a service:
ServiceReference
objects for the service may no longer be used to get a service object for the service. ServiceFactory.ungetService
method is called to release the service object for the bundle.
java.lang.IllegalStateException | If this ServiceRegistration object has already been unregistered. |
Implemented in org.knopflerfish.framework.ServiceRegistrationImpl.