forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ross Gardler <>
Subject Re: [jira] Commented: (FOR-585) Provide full list of plugins via "Activate Plugins" list
Date Thu, 28 Jul 2005 14:08:34 GMT
Anil Ramnanan wrote:
> Ross Gardler (JIRA) wrote:
>> Ross Gardler commented on FOR-585:
>> ----------------------------------
>> I've applied patch ActivatePluginPatch270705.diff but I'm not closing 
>> this issue as the current solution causes a maintenance problem since 
>> all plugin names are hard coded into the java code. We need to extract 
>> those from the plugins.xml file.
> I am going to use the plugins.xml file located in _FORREST_HOME/plugins 
> to get the list of available plugins. Is this the right location ? I ask 
> because I see taht there is a plugin.descriptors properties in 
> which points to 

The current solution is fine for now. Don't get too bogged down in 
detail, you have much to do for GSoC and this goes beyond the scope of 
your original proposal. I have added it to the issue tracker as a 
reminder of potential improvements not as an "instruction" for any 
particular dev.

That said, please feel free to go ahead and implement it if you want to 
scratch the itch, as long as you understand this is not something that I 
(with my GSoC mentor hat on) consider a requirement for your GSoC 
proposal. If you choose not to implement this please add a comment to 
the issue linking to this thread in the archives as you have raised some 
important points that we should maintain.

Now, to answer your question...

The plugins.descriptors file can actually take multiple values, i.e. 
there can be more than one descriptor. So you should really take this 
property and interpret all the available plugins in the various descriptors.

The reason for multiple descriptors is that people may build custom 
plugins for their own site.

Furthermore, you should use the published version because plugins have a 
different release cycle to that of Forrest. Hence there may be more 
plugins available than are specified in the local 
FORREST_HOME/plugins/plugins.xml file.

Finally, that particular file is not a part of the binary distribution 
of Forrest, so your solution would only work with source distributions.

How does this sound as a solution:

We create a file which will read in the values 
from and make them available via appropriate methods, 
for example:

  * Retrieve a list of plugin descriptor files used by this site.
  * @return an array of URLs pointing to plugin descriptor files
public Array getPluginDescriptorURLs();

The wizard will then use this method to get the URL for each of the 
plugin descriptors and processes them as you intended above.

When we change the forrest configuration system we would just need to 
change the way the are read into the above class.


View raw message