Plugin Manager
From AIBenchWiki
Create a plugin settings file: /conf/plugins.conf
The file is used, by now, to enable/disable plugins
myplugin.active=false
Use the PluginManager plugin
This plugin adds a new panel in the Workbench's bottom zone to bring an Plugin Information Panel which:
- Shows the current available plugins, their version, and their state (diabled/enabled).
- Allows the user to enable/disable current installed plugins, by changing their option in the /conf/plugins.conf. Changes only will take effect after AIBench restarts.
- Allows a quick plugin update and missing dependency plugins install.
- Allows the user to manage a plugin repository to download. The user can change the repository url and can view the plugins stored through a Plugin Repository Dialog. The Plugin Repository Dialog informs about which plugins can be installed or updated. When the plugin is downloaded/updated, AIBench should be restarted. When the user searchs for a new plugin, AIBench connects and lists the available plugins from the repository showing something like:
Plugin name/Dependency Installed Version Repository Version Required Version Download ------------------------------------------------------------------------------------------------------------------------------ New plugin 1.5 2.0 [Update - Version 2.0] + aplugin(1.1+) 1.4 none 1.4 + bplugin(1.2) none 1.2 1.2 [Install - Version 1.2] New plugin 2 none 1.0 [Install - Version 1.0]
- The PluginManager checks the dependencies between the plugins to warn the user about inconsistencies or incompatibilities when a plugin is disabled or when a plugins is updated/installed.
Create and configure your plugin repository specification
Your will be able to create a web server with new or updated plugins (repository). A repository should:
- Be available via HTTP. The URL of the store and the repository metadata file can be configured in the /conf/pluginmanager.conf.
pluginrepository.host=http://my.software.org/plugins # URL of the repository. pluginrepository.infofile=plugins.dat # File containing the repository metadata. plugininstaller.dir=plugins_install # Directory where the plugins are downloaded before being installed.
- The server should declare a metadata file with available plugins information, i.e.: http://my.software.org/plugins/plugins.dat
plugin1.uid=myplugin # The plugin UID. plugin1.name=My plugin # The name of the plugin. plugin1.version=1.1 # The version of the plugin stored in the repository. plugin1.needs=pluginA[1.5+];pluginB[1.7] # The plugins needed by the plugin (dependencies). - Optional plugin1.file=plugin1.zip # The file containing the plugin files. May be in .zip, .jar, .tar or .tar.gz format. plugin1.md5=1a2b3c4d5e6f7890 # The md5 of the file. Allows client-side validation of the downloaded files. - Optional plugin2.uid=myotherplugin plugin2.name=My other plugin plugin2.version=1.5 plugin2.file=plugin2.zip
- The client is responsible to check the current AIBench meets the dependencies.

