FindHook
Date: 2016-06-24

org.osgi.framework.hooks.bundle

## Interface FindHook

-     @ConsumerType
      public interface FindHook

  OSGi Framework Bundle Context Hook Service.

  Bundles registering this service will be called during framework bundle find (get bundles) operations.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `find(BundleContext context, java.util.Collection<Bundle> bundles)` Find hook method.

- - ### Method Detail

    - #### find

          void find(BundleContext context,
                  java.util.Collection<Bundle> bundles)

      Find hook method. This method is called for the following:
      - Bundle find operations using `BundleContext.getBundle(long)` and `BundleContext.getBundles()` methods. The find method can filter the result of the find operation. Note that a find operation using the `BundleContext.getBundle(String)` method does not cause the find method to be called.
      - Bundle install operations when an existing bundle is already installed at a given location. In this case, the find method is called to determine if the context performing the install operation is able to find the bundle. If the context cannot find the existing bundle then the install operation must fail with a `BundleException.REJECTED_BY_HOOK` exception.
      Parameters:
        `context` - The bundle context of the bundle performing the find operation.
        `bundles` - A collection of Bundles to be returned as a result of the find operation. The implementation of this method may remove bundles from the collection to prevent the bundles from being returned to the bundle performing the find operation. 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.