[ 
https://issues.apache.org/jira/browse/FELIX-2644?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12924499#action_12924499
 ] 

Valentin Valchev commented on FELIX-2644:
-----------------------------------------

* agreed fro NON-NLS ;)
* instead of adding new method OsgiManager.isEnabled() refactored a little bit 
the existing method isPluginDisabled
* agreed for Plugin.isEnabled()
* for the configuration listener, if I extend the list to the list of all 
available plugins, then the problems is that each newly registered plugin will 
get 'disabled' by default. Another solution is the configuration value to 
contain the list of "disabled" plugins.


And some other thing, that I will do for the internal plugins is to make their 
title look like <label>.pluginTitle.

> cannot disable plugin
> ---------------------
>
>                 Key: FELIX-2644
>                 URL: https://issues.apache.org/jira/browse/FELIX-2644
>             Project: Felix
>          Issue Type: Bug
>          Components: Web Console
>    Affects Versions: webconsole-3.1.2
>            Reporter: Valentin Valchev
>         Attachments: internal-plugin-loader.patch
>
>
> Something went terribly wrong! I cannot disable a plugin from the 
> configuration.
> The reason for this is that the plugins are initialized during startup. In 
> the constructor, the Web Console will lookup the configuration and see if 
> plugin is disable. If so, it will be ignored, otherwise the plugin will be 
> instantiated and ready to use.
> However, configuration delivery is asynchronous, so you don't know when the 
> configuration dictionary is delivered and in my case, it is 'updated' a 
> little bit after the initialization. So initially, when the web console is 
> initialized, it has 'null' - default configuration and all plugins are 
> enabled. Then later on, after updating the configuration I disable as example 
> the 'shell' plugin.
> Unfortunately, the web console will not check if the plugin is disabled, when 
> the browser is opened and the 'shell' plugin remains visible.
> Putting the plugin initialization in the constructor, means, that there is no 
> way to actually disable a plugin and all internal plugin will be instantiate 
> and visible by default, Even if they are not needed, there is no browser 
> request for them or disabled by the configuration.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to