Lire::PluginManager - Manages the Lire plugins. use Lire::PluginManager; Lire::PluginManager->register_default_plugins(); my $plugin = new MyDlfConverter(); Lire::PluginManager->register_plugin( $plufin ); my $plugins = Lire::PluginManager->plugins( 'dlf_analyser' ); my $converter = Lire::PluginManager->get_plugin('dlf_analyser', 'combined'); All method can be called as class method on the Lire::PlugingManager module or on an instance.

PLUGIN TYPES
There are four kind of plugins defined in Lire: dlf_analyser, dlf_converter, chart_type and output_format.

instance()
Returns the singleton instance of the PluginManager

plugin_names( $type )
Returns an array reference containing the names of all registered plugin of type $type.

plugins( $type )
Returns an array reference containing all the Plugin objects registerd for $type.

has_plugin( $type, $name )
Returns true if there is a Lire::Plugin named $name registered for type $type.

get_plugin( $type, $name )
Returns the Lire::Plugin object named $name of type $type. Croaks when there is no plugin registerd under that name.

register_plugin( $plugin )
Registers the Lire::Plugin $plugin. The type and name of the plugin are queried using the Lire::Plugin interface. An error will be thrown if there is already a plugin registered under the same name and type.

unregister_plugin( $type, $name )
Unregister the plugin $name of type $type. The method will dies if there is no such plugin.

analysers_by_src( $schema )
Returns in an array reference all the analysers that declare $schema as their src_schema().

analysers_by_dst( $schema )
Returns in an array reference all the analysers that declare $schema as their dst_schema().

register_default_plugins()
This method will load and initialize all the plugins available. The plugins are registered by executing all the perl scripts found in the directories listed in the 'plugins_init_path' configuration variable. These scripts should call Lire::PluginManager->register_plugin() to register the plugins. For compatibility with previous versions of Lire, it will also registers the DlfConverters initialized using older mechanism. Lire::Plugin(3pm), Lire::OutputFormat(3pm), Lire::DlfAnalyser(3pm), Lire::DlfConverter(3pm) Francis J. Lacoste <flacoste@logreport.org> $Id: PluginManager.pm,v 1.7 2004/07/15 16:32:25 flacoste Exp $ Copyright (C) 2004 Stichting LogReport Foundation LogReport@LogReport.org This file is part of Lire. Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html or write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.