My suggestion would be to create an own module just for the plugin.
If the webconsole is available your plugin is available.

This keeps jcrinstall free from any additional dependencies.

Carsten

Bertrand Delacretaz wrote:
> Hi,
> 
> I'd like to add a webconsole plugin to the
> contrib/extensions/jcrinstall/osgi module, which should have as few
> dependencies as possible, to avoid stopping as much as possible when
> other things are updated.
> 
> The standard way of creating webconsole plugins requires adding
> dependencies to org.apache.felix.webconsole and to javax.servlet.
> Then, stopping the console and refreshing packages causes the bundle
> that provides the plugin to stop, which is not acceptable for my
> bundle.
> 
> My current idea is to create a "console bridge" module, that
> dynamically registers webconsole plugin services, based on bundle
> headers like:
> 
>   Webconsole-Plugin-Class : o.a.s.MyPlugin
> 
> Where the MyPlugin class is like
> 
>   /** @return a Map with the plugin's label and title */
>   Map getPluginInfo()
> 
>   /** @return the HTML content of the plugin page */
>   String getHTMLContent(Map requestParameters)
> 
> The console bridge would then listen for bundles which provide this
> bundle header, create an instance of the named class, and wrap it in a
> proxy class (using reflection) that's the actual WebConsole plugin.
> 
> Is there already such a mechanism? Other suggestions?
> 
> -Bertrand
> 


-- 
Carsten Ziegeler
[email protected]

Reply via email to