From 25c622cd1b14f2fe36bb72caffe8fe5a33cd6bec Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Tue, 18 Nov 2008 15:37:15 -0700 Subject: [PATCH] Add log callback handler --- .../Imap_Client/lib/Horde/Imap/Client/Exception.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/framework/Imap_Client/lib/Horde/Imap/Client/Exception.php b/framework/Imap_Client/lib/Horde/Imap/Client/Exception.php index f7f1858e5..de9b6aedb 100644 --- a/framework/Imap_Client/lib/Horde/Imap/Client/Exception.php +++ b/framework/Imap_Client/lib/Horde/Imap/Client/Exception.php @@ -54,4 +54,25 @@ class Horde_Imap_Client_Exception extends Exception // Thrown if the cache has become invalid. const CACHEUIDINVALID = 11; + + /** + * Define a callback function used to log the exception. Will be passed + * a single parameter - a copy of this object. + * + * @var callback + */ + static public $logCallback = null; + + /** + * Constructor. + */ + function __construct($message = null, $code = 0) + { + parent::__construct($message, $code); + + /* Call log function. */ + if (!is_null(self::$logCallback)) { + call_user_func(self::$logCallback, $this); + } + } } -- 2.11.0