Package org.apache.felix.webconsole.bundleinfo

## Interface BundleInfoProvider

    public interface BundleInfoProvider

The bundle info provider allows the user to supply additional information that will be used by the Web Console bundle plugin. The API allows the user to register a special service, that could bind a custom, implementation-specific information to a bundle. A typical use-case for that API would be the Declarative Services, that could provide information about the components provided by this bundle (and link to the component plugin too). Another usage could be the ProSyst resource manager, that would provide information about the memory and CPU usage of the bundle.

Author:
  Valentin Valchev

### Field Summary

Fields
`static BundleInfo[]` `NO_INFO` This is just an utility - empty array, that could be returned when there is no additional information for a specific bundle.

### Method Summary

All Methods Instance Methods Abstract Methods
`BundleInfo[]` `getBundleInfo​(org.osgi.framework.Bundle bundle, String webConsoleRoot, Locale locale)` Gets the associated bundle information with the specified bundle (by it's ID) The Service may also be called outside through the new Inventory bundle due to mapping the BundlesServlet to an InventoryPrinter and for example calling it from a Gogo Shell.
`String` `getName​(Locale locale)` Gets the name of the bundle info provider as localized string.

### Field Detail

#### NO_INFO

    static final BundleInfo[] NO_INFO

This is just an utility - empty array, that could be returned when there is no additional information for a specific bundle.

### Method Detail

#### getName

    String getName​(Locale locale)

Gets the name of the bundle info provider as localized string.

Parameters:
  `locale` - the locale in which the name should be returned
Returns:
  the name of the bundle info provider.

#### getBundleInfo

    BundleInfo[] getBundleInfo​(org.osgi.framework.Bundle bundle,
                               String webConsoleRoot,
                               Locale locale)

Gets the associated bundle information with the specified bundle (by it's ID) The Service may also be called outside through the new Inventory bundle due to mapping the BundlesServlet to an InventoryPrinter and for example calling it from a Gogo Shell. In this case the `webConsoleRoot` parameter will be null a `BundleInfo` objects of type `BundleInfoType.LINK` must not be generated.

Parameters:
  `bundle` - the bundle, for which additional information is requested.
  `webConsoleRoot` - the root alias of the web console itself or `null` if this method is not called through the Web Console itself.
  `locale` - the locale in which the key-value pair should be returned.
Returns:
  array of available `BundleInfo` or empty array if none.