From 92a43d5d384ba4e504c5255989a869ced424219c Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 21 Oct 2008 17:09:57 -0400 Subject: [PATCH] change example to override a real function --- plugins/externaldemo | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/plugins/externaldemo b/plugins/externaldemo index fa93e672d..4d13f2444 100755 --- a/plugins/externaldemo +++ b/plugins/externaldemo @@ -101,16 +101,16 @@ sub import { # stage of ikiwiki. rpc_call("hook", type => "preprocess", id => "externaldemo", call => "preprocess"); - # Here's an example of how to inject an arbitrary function into - # ikiwiki. Ikiwiki will be able to call bob() just like any other - # function. Note use of automatic memoization. - rpc_call("inject", name => "IkiWiki::bob", call => "bob", - memoize => 1); - # Here's an exmaple of how to access values in %IkiWiki::config. print STDERR "url is set to: ". rpc_call("getvar", "config", "url")."\n"; + # Here's an example of how to inject an arbitrary function into + # ikiwiki, replacing a core function. + # Note use of automatic memoization. + rpc_call("inject", name => "IkiWiki::formattime", + call => "formattime", memoize => 1); + print STDERR "externaldemo plugin successfully imported\n"; } @@ -126,8 +126,9 @@ sub preprocess { return "externaldemo plugin preprocessing on $title!"; } -sub bob { - print STDERR "externaldemo plugin's bob called via RPC"; +sub formattime { + print STDERR "externaldemo plugin's formattime called via RPC"; + return scalar "formatted time: ".localtime(shift); } # Now all that's left to do is loop and handle each incoming RPC request.