]> git.mxchange.org Git - mailer.git/blobdiff - inc/classes/exceptions/class_FrameworkException.php
Moved to repository 'core' (not yet done)
[mailer.git] / inc / classes / exceptions / class_FrameworkException.php
diff --git a/inc/classes/exceptions/class_FrameworkException.php b/inc/classes/exceptions/class_FrameworkException.php
deleted file mode 100644 (file)
index c3a2c1a..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-<?php
-/**
- * A general abstract exception. You should not throw this even when you
- * remove the "abstract" key-word. Better you make your own exception and
- * attach a dedicated message to it.
- *
- * @author             Roland Haeder <webmaster@ship-simu.org>
- * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, this is free software
- * @license            GNU GPL 3.0 or any newer version
- * @link               http://www.ship-simu.org
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-abstract class FrameworkException extends ReflectionException {
-       /**
-        * Array for the backtrace
-        */
-       private $backTrace = array();
-
-       /**
-        * Extra data
-        */
-       private $extraData = "";
-
-       /**
-        * The super constructor for all exceptions
-        *
-        * @param       $message        The non-optional message for the exception
-        * @param       $code           An optional code for better debugging
-        * @return      void
-        */
-       public function __construct($message, $code = 0) {
-               // Extract backtrace
-               $this->saveBackTrace();
-
-               // Cast all data
-               $message = (string) $message;
-               $code    = (int)    $code;
-
-               // In emergency exit?
-               if (defined('EMERGENCY_EXIT_CALLED')) {
-                       // Output message
-                       printf("[%s:] Message: %s, Backtrace: <pre>%s</pre>",
-                               $this->__toString(),
-                               $message,
-                               $this->getPrintableBackTrace()
-                       );
-
-                       // End here
-                       exit();
-               } // END - if
-               // Make sure everything is assigned properly
-               parent::__construct($message, $code);
-
-               // Log it away if DEBUG_ALL is set
-               if (defined('DEBUG_ALL')) {
-                       // Log the error
-                       error_log(sprintf("[%s:] %s (%s)",
-                               $this->__toString(),
-                               $message,
-                               $this->getHexCode()
-                       ));
-               } // END - if
-       }
-
-       /**
-        * Save the current backtrace
-        *
-        * @return      void
-        */
-       private final function saveBackTrace () {
-               // Get full backtrace
-               $this->backTrace = debug_backtrace();
-
-               // Remove this call
-               $dummy = array_shift($this->backTrace);
-
-               // resort the array
-               ksort($this->backTrace);
-       }
-
-       /**
-        * Get saved backtrace
-        *
-        * @return      $backTrace      The full backtrace in an array
-        */
-       public final function getBackTrace () {
-               return $this->backTrace;
-       }
-
-       /**
-        * Getter for printable backtrace
-        *
-        * @return      $backTrace      Backtrace for web pages
-        */
-       public final function getPrintableBackTrace () {
-               // Get the backtrace
-               $dbgTrace = $this->getBackTrace();
-
-               // Taken from de.php.net user comments
-               $dbgMsg = "<br />\nDebug backtrace begin:<br />\n";
-               foreach ($dbgTrace as $dbgIndex => $dbgInfo) {
-                       // No info by default
-                       $info = "NULL";
-
-                       // Are there arguments?
-                       if ((isset($dbgInfo['args'])) && (is_array($dbgInfo['args'])) && (isset($dbgInfo['args'][0]))) {
-                               //* DEBUG: */ echo $dbgIndex.": <pre>".htmlentities(print_r($dbgInfo['args'], true))."</pre>";
-                               $info = "";
-                               foreach ($dbgInfo['args'] as $debug) {
-                                       // Add only non-array elements
-                                       if (!is_array($debug)) {
-                                               $info .= $debug.", ";
-                                       } // END - if
-                               } // END - if
-
-                               $info = substr($info, 0, -2);
-                       } // END - if
-
-                       // Prepare argument infos
-                       $info = "<em id=\"debug_args_".$dbgIndex."\">{$info}</em>";
-
-                       // File detection
-                       $file = "Unknown file";
-                       if (isset($dbgInfo['file'])) {
-                               $file = basename($dbgInfo['file']);
-                       } // END - if
-
-                       // Line detection
-                       $line = "Unknown line";
-                       if (isset($dbgInfo['line'])) {
-                               $line = "line {$dbgInfo['line']}";
-                       } // END - if
-
-                       // The message
-                       $dbgMsg .= "\t at <em id=\"debug_id_".$dbgIndex."\">".$dbgIndex."</em> <em id=\"debug_file_".$dbgIndex."\">".$file."</em> (<em id=\"debug_line_".$dbgIndex."\">".$line."</em>) -&gt; ".$dbgInfo['function']."(".$info.")<br />\n";
-               } // END - if
-               $dbgMsg .= "Debug backtrace end<br />\n";
-
-               return $dbgMsg;
-       }
-
-       /**
-        * Returns the name of the thrown exception
-        *
-        * @return      $toString               The name of the thrown exception
-        */
-       public function __toString() {
-               return get_class($this);
-       }
-
-       /**
-        * Getter for hex-decimal code
-        *
-        * @param       $code           Integer code to encode in hex
-        * @return      $hexCode        The exception code in hex-decimal format
-        */
-       public final function getHexCode ($code = null) {
-               // Get the decimal code
-               if (is_null($code)) $code = $this->getCode();
-
-               // Format it to hex-decimal, 0x as prefix and 3 chars
-               $hexCode = sprintf("0x%03s", dechex($code));
-
-               // Return it
-               return $hexCode;
-       }
-
-       /**
-        * Setter for extra data
-        *
-        * @param       $extraData      Extra data to store
-        * @return      void
-        */
-       protected final function setExtraData ($extraData) {
-               $this->extraData = $extraData;
-       }
-
-       /**
-        * Getter for extra data
-        *
-        * @return      $extraData      Extra data to store
-        */
-       public final function getExtraData () {
-               return $this->extraData;
-       }
-}
-
-// [EOF]
-?>