[
https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700522#action_12700522
]
Carsten Ziegeler commented on FELIX-1014:
-----------------------------------------
Now I think it would make sense to make the default plugins configurable :)
Maybe in some cases you don't want some of the default plugins or you want to
easily replace it with your own version.
Now, the questions is if you want to do this by code or by configuration.
> 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.