From e842bd07d5bcb07c236b970d1c91c8b101753b0e Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Wed, 11 Feb 2009 15:35:20 +0100 Subject: Fix for FS#1598 - allow a plugin to be a singleton if it so desires DokuWiki typically instantiates a plugin once and reuses that instance whenever the plugin is required. However on some occasions DokuWiki will request a new instantiation of a plugin. This particularly applies to render plugins. This patch allows a plugin to force DokuWiki to reuse the existing instance. If a plugin wishes to only be instantiated once then it should implement an "isSingleton()" method and that method should return boolean true. darcs-hash:20090211143520-f07c6-5c1a33dbed55f0b196a204745fe3139f3c7c0aa9.gz --- inc/plugin.php | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'inc/plugin.php') diff --git a/inc/plugin.php b/inc/plugin.php index 763b57bf2..33cb06c87 100644 --- a/inc/plugin.php +++ b/inc/plugin.php @@ -215,6 +215,15 @@ class DokuWiki_Plugin { return p_render($format, p_get_instructions($text),$info); } + /** + * Allow the plugin to prevent DokuWiki creating a second instance of itself + * + * @return bool true if the plugin can not be instantiated more than once + */ + function isSingleton() { + return false; + } + // deprecated functions function plugin_localFN($id) { return $this->localFN($id); } function plugin_locale_xhtml($id) { return $this->locale_xhtml($id); } -- cgit v1.2.3