@ConsumerType public interface CollisionHookOSGi Framework Bundle Collision Hook Service.
If the framework was launched with the
org.osgi.framework.bsnversionframework launching property set to
managed, then all registered collision hook services will be called during framework bundle install and update operations to determine if an install or update operation will result in a bundle symbolic name and version collision.
void filterCollisions(int operationType, Bundle target, java.util.Collection<Bundle> collisionCandidates)Filter bundle collisions hook method. This method is called during the install or update operation. The operation type will be
updating. Depending on the operation type the target bundle and the collision candidate collection are the following:
installing- The target is the bundle associated with the
BundleContextused to call one of the
installmethods. The collision candidate collection contains the existing bundles installed which have the same symbolic name and version as the bundle being installed.
updating- The target is the bundle used to call one of the
updatemethods. The collision candidate collection contains the existing bundles installed which have the same symbolic name and version as the content the target bundle is being updated to.
operationType- The operation type. Must be the value of
target- The target bundle used to determine what collision candidates to filter.
collisionCandidates- The collection of collision candidates. The collection supports all the optional
addAll. Attempting to add to the collection will result in an
UnsupportedOperationException. The collection is not synchronized.