Lire::PluginManager(3) Manages the Lire plugins.

SYNOPSIS


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');

DESCRIPTION

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.

AUTHOR

  Francis J. Lacoste <[email protected]>

VERSION

$Id: PluginManager.pm,v 1.8 2006/07/23 13:16:29 vanbaal Exp $

COPYRIGHT

Copyright (C) 2004 Stichting LogReport Foundation [email protected]

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.