Plugins are used to complement the normal system of inheritance in object-oriented Perl. Whereas a child object can inherit methods from multiple parents, a parent object normally cannot be overridden by multiple children. The plugin system "aggregates" the contents of several methods into one "master" method that can then be used by mod_perl when rendering the webpage.
The module conf/Plugins.pm
controls which plugins are
used by an instance of Ensembl and their order of precedence. In a
standard Ensembl mirror, the module will define a plugin array as follows:
$SiteDefs::ENSEMBL_PLUGINS = [ 'EnsEMBL::Mirror' => $SiteDefs::ENSEMBL_SERVERROOT.'/public-plugins/mirror', 'EnsEMBL::Ensembl' => $SiteDefs::ENSEMBL_SERVERROOT.'/public-plugins/ensembl' ];
The plugins are processed in reverse order, starting with the last one:
© 2024 Inserm. Hosted by genouest.org. This product includes software developed by Ensembl.