[
https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700466#action_12700466
]
Felix Meschberger commented on FELIX-1014:
------------------------------------------
I assume you want to be able to overwrite/extend the default list of plugins,
right ?
Why would you want to do that ? Do you have a problem you cannot solve by just
registering plugins and thus need to place your plugins in the same bundle as
the web console and thus extend the web console servlet ?
Thanks for clarification.
> Hardcoded list of webconsole plugins in OSGiManager
> ---------------------------------------------------
>
> Key: FELIX-1014
> URL: https://issues.apache.org/jira/browse/FELIX-1014
> Project: Felix
> Issue Type: Sub-task
> Components: Web Console
> Affects Versions: webconsole-1.2.8
> Reporter: Thomas Diesler
>
> Instead of
> private static final String[] PLUGIN_CLASSES =
> {
> "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>
> "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
> "org.apache.felix.webconsole.internal.compendium.ConfigManager",
> "org.apache.felix.webconsole.internal.core.BundlesServlet",
> "org.apache.felix.webconsole.internal.core.InstallAction",
> "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
> "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
> "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
> "org.apache.felix.webconsole.internal.misc.LicenseServlet",
> "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
> "org.apache.felix.webconsole.internal.misc.ShellServlet",
> "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
> "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
> "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
> "org.apache.felix.webconsole.internal.system.GCAction",
> "org.apache.felix.webconsole.internal.system.VMStatPlugin" };
> we propose
> protected String[] getPluginClasses()
> {
> return new String[] {
>
> "org.apache.felix.webconsole.internal.compendium.ComponentConfigurationPrinter",
>
> "org.apache.felix.webconsole.internal.compendium.ComponentsServlet",
> "org.apache.felix.webconsole.internal.compendium.ConfigManager",
> "org.apache.felix.webconsole.internal.core.BundlesServlet",
> "org.apache.felix.webconsole.internal.core.InstallAction",
> "org.apache.felix.webconsole.internal.core.SetStartLevelAction",
> "org.apache.felix.webconsole.internal.deppack.DepPackServlet",
> "org.apache.felix.webconsole.internal.misc.EventAdminServlet",
> "org.apache.felix.webconsole.internal.misc.LicenseServlet",
> "org.apache.felix.webconsole.internal.misc.ConfigurationRender",
> "org.apache.felix.webconsole.internal.misc.ShellServlet",
> "org.apache.felix.webconsole.internal.obr.BundleRepositoryRender",
> "org.apache.felix.webconsole.internal.obr.InstallFromRepoAction",
> "org.apache.felix.webconsole.internal.obr.RefreshRepoAction",
> "org.apache.felix.webconsole.internal.system.GCAction",
> "org.apache.felix.webconsole.internal.system.ShutdownAction",
> "org.apache.felix.webconsole.internal.system.ShutdownRender",
> "org.apache.felix.webconsole.internal.system.VMStatRender", };
> }
>
> /**
> * The default value for the {...@link #PROP_MANAGER_ROOT} configuration
> * property (value is "/system/console").
> */
> protected String getDefaultManagerRoot()
> {
> return DEFAULT_MANAGER_ROOT;
> }
> ----------------------
>
> public void init()
> {
> // base class initialization not needed, since the GenericServlet.init
> // is an empty method
> // get the installed plugin classes
> String[] pluginClasses = getPluginClasses();
>
> // setup the included plugins
> ClassLoader classLoader = getClass().getClassLoader();
> for ( int i = 0; i < pluginClasses.length; i++ )
> {
> String pluginClassName = pluginClasses[i];
> try
> {
> -------------------
> void updateConfiguration( Dictionary config )
> {
> // get the web manager root path
> webManagerRoot = this.getProperty( config, PROP_MANAGER_ROOT,
> getDefaultManagerRoot() );
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.