struct cppmicroservices::BundleEventHook

Bundle Event Hook Service.

Bundles registering this service will be called during bundle lifecycle (installed, starting, started, stopping, stopped, uninstalled) operations.

Implementations of this interface are required to be thread-safe.

Public Functions

virtual ~BundleEventHook()
virtual void Event(const BundleEvent &event, ShrinkableVector<BundleContext> &contexts) = 0

Bundle event hook method.

This method is called prior to bundle event delivery when a bundle is installed, starting, started, stopping, stopped, and uninstalled. This method can filter the bundles which receive the event.

This method is called one and only one time for each bundle event generated, this includes bundle events which are generated when there are no bundle listeners registered.

  • event: The bundle event to be delivered.
  • contexts: A list of Bundle Contexts for bundles which have listeners to which the specified event will be delivered. The implementation of this method may remove bundle contexts from the list to prevent the event from being delivered to the associated bundles.