Bundle event hook method. This method is called prior to bundle event
delivery when a bundle is installed, resolved, started, stopped, unresolved, or
uninstalled. This method can filter the bundles which receive the event.

This method must be called by the framework one and only one time for each bundle
event generated, this included bundle events which are generated when there are no
bundle listeners registered. This method must be called on the same thread that is
performing the action which generated the specified event. The specified
collection includes bundle contexts with synchronous and asynchronous bundle
listeners registered with them.

Parameters:

event The bundle event to be delivered

contexts A collection 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
collection to prevent the event from being delivered to the
associated bundles. The collection supports all the optional
Collection operations except add and
addAll. Attempting to add to the collection will
result in an UnsupportedOperationException. The
collection is not synchronized.