|
OSGi™ Core Release 5 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
S - Type of Service.public interface ServiceRegistration<S>
A registered service.
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.
BundleContext.registerService(String[],Object,Dictionary)| Method Summary | |
|---|---|
ServiceReference<S> |
getReference()
Returns a ServiceReference object for a service being registered. |
void |
setProperties(java.util.Dictionary<java.lang.String,?> properties)
Updates the properties associated with a service. |
void |
unregister()
Unregisters a service. |
| Method Detail |
|---|
ServiceReference<S> getReference()
ServiceReference object for a service being registered.
The ServiceReference object may be shared with other bundles.
ServiceReference object.
java.lang.IllegalStateException - If this ServiceRegistration object
has already been unregistered.void setProperties(java.util.Dictionary<java.lang.String,?> properties)
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:
ServiceEvent.MODIFIED is fired.
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.
java.lang.IllegalStateException - If this ServiceRegistration object
has already been unregistered.
java.lang.IllegalArgumentException - If properties contains case
variants of the same key name.void unregister()
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 once unregistration is complete.
The following steps are required to unregister a service:
ServiceEvent.UNREGISTERING is fired
so that bundles using this service can release their use of the service.
Once delivery of the service event is complete, the
ServiceReference objects for the service may no longer be used to
get a service object for the service.
ServiceFactory object, the
ServiceFactory.ungetService method is called to release the
service object for the bundle.
java.lang.IllegalStateException - If this ServiceRegistration object
has already been unregistered.BundleContext.ungetService(ServiceReference),
ServiceFactory.ungetService(Bundle, ServiceRegistration, Object)
|
OSGi™ Core Release 5 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||