Class ServiceEvent

  • All Implemented Interfaces:
    java.io.Serializable

    public class ServiceEvent
    extends java.util.EventObject
    An event from the Framework describing a service lifecycle change.

    ServiceEvent objects are delivered to ServiceListeners and AllServiceListeners when a change occurs in this service's lifecycle. A type code is used to identify the event type for future extendability.

    OSGi Alliance reserves the right to extend the set of types.

    See Also:
    ServiceListener, AllServiceListener, Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int MODIFIED
      The properties of a registered service have been modified.
      static int MODIFIED_ENDMATCH
      The properties of a registered service have been modified and the new properties no longer match the listener's filter.
      static int REGISTERED
      This service has been registered.
      static int UNREGISTERING
      This service is in the process of being unregistered.
      • Fields inherited from class java.util.EventObject

        source
    • Constructor Summary

      Constructors 
      Constructor Description
      ServiceEvent​(int type, ServiceReference<?> reference)
      Creates a new service event object.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      ServiceReference<?> getServiceReference()
      Returns a reference to the service that had a change occur in its lifecycle.
      int getType()
      Returns the type of event.
      • Methods inherited from class java.util.EventObject

        getSource, toString
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • UNREGISTERING

        public static final int UNREGISTERING
        This service is in the process of being unregistered.

        This event is synchronously delivered before the service has completed unregistering.

        If a bundle is using a service that is UNREGISTERING, the bundle should release its use of the service when it receives this event. If the bundle does not release its use of the service when it receives this event, the Framework will automatically release the bundle's use of the service while completing the service unregistration operation.

        See Also:
        ServiceRegistration.unregister(), BundleContext.ungetService(ServiceReference), Constant Field Values
      • MODIFIED_ENDMATCH

        public static final int MODIFIED_ENDMATCH
        The properties of a registered service have been modified and the new properties no longer match the listener's filter.

        This event is synchronously delivered after the service properties have been modified. This event is only delivered to listeners which were added with a non-null filter where the filter matched the service properties prior to the modification but the filter does not match the modified service properties.

        Since:
        1.5
        See Also:
        ServiceRegistration.setProperties(Dictionary), Constant Field Values
    • Constructor Detail

      • ServiceEvent

        public ServiceEvent​(int type,
                            ServiceReference<?> reference)
        Creates a new service event object.
        Parameters:
        type - The event type.
        reference - A ServiceReference object to the service that had a lifecycle change.
    • Method Detail

      • getServiceReference

        public ServiceReference<?> getServiceReference()
        Returns a reference to the service that had a change occur in its lifecycle.

        This reference is the source of the event.

        Returns:
        Reference to the service that had a lifecycle change.