EPrints Technical Mailing List Archive

Message: #07095

< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

Re: [EP-tech] Overriding subroutines

Hi Alan




use EPrints::Plugin::Screen::MyPlugin::Stuff;

sub EPrints::Plugin::Screen::MyPlugin::Stuff::method_name


                print ‘2’;



…in your cfg.d file.






From: eprints-tech-bounces@ecs.soton.ac.uk> on behalf of "Alan.Stiles" <alan.stiles@open.ac.uk>
Reply-To: <eprints-tech@ecs.soton.ac.uk>
Date: Tuesday, 23 January 2018 16:12
To: "eprints-tech@ecs.soton.ac.uk" <eprints-tech@ecs.soton.ac.uk>
Subject: [EP-tech] Overriding subroutines


Hi all,

I’m currently trying to override a subroutine from a plugin module, by redefining it in the local cfg.d file.





package EPrints::Plugin::Screen::MyPlugin::Stuff;

sub method_name { print 1;}


and in <EPRINTS_ROOT>/archives/<MY_ARCHIVE>/cfg/cfg.d/zzz_stuff_plugin_local.pl  I have


package EPrints::Plugin::Screen::MyPlugin::Stuff;

sub method_name { print 2;}



when I restart the server I get the print 1;  statement.   If I change the subroutine name in the plugin (under lib/plugins….) then restart the server I get the print 2; statement so it appears to be loading the plugin after the local version?  I thought these happened the other way round?




-- The Open University is incorporated by Royal Charter (RC 000391), an exempt charity in England & Wales and a charity registered in Scotland (SC 038302). The Open University is authorised and regulated by the Financial Conduct Authority in relation to its secondary activity of credit broking. *** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech *** Archive: http://www.eprints.org/tech.php/ *** EPrints community wiki: http://wiki.eprints.org/ *** EPrints developers Forum: http://forum.eprints.org/