# Package org.eclipse.help.browser

Provides interfaces that need to be implemented by web browser adapters.

See: Description

Interface Summary
IBrowser: Represents a web browser that can be used by clients to display documents for the given URLs.
IBrowserFactory: Implementators of `org.eclipse.help.base.browser` extension points must provide implementation of this interface.

## Package org.eclipse.help.browser Description

Provides interfaces that need to be implemented by web browser adapters.

## Package Specification

Base Help System, requires web browser to display help document. Since availability of web browsers differ from system to system, it is possible to configure browser adapters in addition to ones provided with the base. The browser (or browser adapter) can be configured by providing extension for `org.eclipse.help.base.browser` extension point. If more than one browser is available on a user system, the default browser can be designated in Help preference page.

In general terms, implementing a web browser involves:

- Implementing standalone UI element having the `IBrowser` API, and capable of displaying HTML documents given a URL.
- Providing a factory for managing of browsers on a particular system, by implementing `IBrowserFactory` interface.
- Declaring an extension of the `org.eclipse.help.base.browser` extension point that mentions the name of that factory class.

Note that browser factory will be created on every system. If the factory is not capable of creating a browser on some system configurations, due to missing prerequisites e.t.c., its `isAvailable()` method should be returning false on these systems.