You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Felix Meschberger (JIRA)" <ji...@apache.org> on 2009/09/08 15:59:57 UTC

[jira] Resolved: (FELIX-1014) Hardcoded list of webconsole plugins in OSGiManager

     [ https://issues.apache.org/jira/browse/FELIX-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Felix Meschberger resolved FELIX-1014.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: webconsole-1.2.12

Added support to disable select console plugins provided by the Web Console bundle itself in Rev. 812513.

The ConfigurationListener now also implements the MetaTypeProvider interface to provide the ObjectClassDefinition for the configurtion on demand based on the actual list of configured plugin classes.

For this reason the SCR plugin and meta type XML file generation are not required any more.

By default, all plugins are enabled, of course.

> 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
>            Assignee: Felix Meschberger
>             Fix For: webconsole-1.2.12
>
>
> 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.