Interface EventHandler


  • @ConsumerType
    public interface EventHandler
    Listener for Events.

    EventHandler objects are registered with the Framework service registry and are notified with an Event object when an event is sent or posted.

    EventHandler objects can inspect the received Event object to determine its topic and properties.

    EventHandler objects must be registered with a service property EventConstants.EVENT_TOPIC whose value is the list of topics in which the event handler is interested.

    For example:

     String[] topics = new String[] {"com/isv/*"};
     Hashtable ht = new Hashtable();
     ht.put(EventConstants.EVENT_TOPIC, topics);
     context.registerService(EventHandler.class.getName(), this, ht);
     
    Event Handler services can also be registered with an EventConstants.EVENT_FILTER service property to further filter the events. If the syntax of this filter is invalid, then the Event Handler must be ignored by the Event Admin service. The Event Admin service should log a warning.

    Security Considerations. Bundles wishing to monitor Event objects will require ServicePermission[EventHandler,REGISTER] to register an EventHandler service. The bundle must also have TopicPermission[topic,SUBSCRIBE] for the topic specified in the event in order to receive the event.

    See Also:
    Event
    • Method Detail

      • handleEvent

        void handleEvent​(Event event)
        Called by the EventAdmin service to notify the listener of an event.
        Parameters:
        event - The event that occurred.