Provided by: lire-devel-doc_2.1-1.1_all bug

NAME

       Lire::PluginManager - 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.

SEE ALSO

       Lire::Plugin(3pm), Lire::OutputFormat(3pm), Lire::DlfAnalyser(3pm),
       Lire::DlfConverter(3pm)

AUTHOR

         Francis J. Lacoste <flacoste@logreport.org>

VERSION

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

COPYRIGHT

       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.