Maybe I'm missing something, but wasn't the idea of Horde_Exception to use or
authorJan Schneider <jan@horde.org>
Thu, 18 Nov 2010 16:56:37 +0000 (17:56 +0100)
committerJan Schneider <jan@horde.org>
Fri, 19 Nov 2010 14:18:10 +0000 (15:18 +0100)
emulate the "previous" feature of PHP 5.3 Exceptions?

framework/Exception/lib/Horde/Exception/Prior.php

index 37dffb2..a71d948 100644 (file)
@@ -22,16 +22,20 @@ class Horde_Exception_Prior extends Horde_Exception
      */
     public function __construct($message = null, $code = 0)
     {
+        $previous = null;
         if (is_object($message) &&
             method_exists($message, 'getMessage')) {
             if (empty($code) &&
                 method_exists($message, 'getCode')) {
                 $code = $message->getCode();
             }
+            if ($message instanceof Exception) {
+                $previous = $message;
+            }
             $message = $message->getMessage();
         }
 
-        parent::__construct($message, $code);
+        parent::__construct($message, $code, $previous);
     }
 
 }