All pastes #918493 Raw Edit

mrcheeks

public text v1 · immutable
#918493 ·published 2008-02-26 03:36 UTC
rendered paste body
Plugins management

The plugins list
A plugin.xml file is stored on the xpontus site. It contains basic information about available plugins(id, author, version, etc.). When XPOntus is started for the first time, it checks if the plugins list file exists. If not it downloads it and cache it in the user's folder.

Checking updates
I plan to store a VERSION file on the server with a string ie(1.0). When the app launch it tries to query the remote VERSION file and compare it to the local version file. If the string is different that means that the app needs to update its plugin list(plugin.xml).

Search plugins
Apache Lucene can be used to perform full text indexing of plugins descriptors. This will allow to search for plugins by author, description, name, etc.

Installing/Removing/Updating plugins
JPF(http://jpf.sourceforge.net) has a plugin archiver tool. That tool can be used to install, remove plugins. Upgrading means remove/install. If the user installs a new plugin we use the plugin archiver to extract the plugin zip file to the plugins folder. If the user removes some plugins, we rm -rf the plugins folder.

An idea would be to do as Firefox, "The plugin will be installed/uninstalled when you relaunch the app"