• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • Examples
  • File List

E:/E/GEAMP/www/openbiz/openbiz/others/Zend/Log/Writer/Firebug.php

00001 <?php
00024 require_once 'Zend/Log.php';
00025 
00027 require_once 'Zend/Log/Writer/Abstract.php';
00028 
00030 require_once 'Zend/Log/Formatter/Firebug.php';
00031 
00033 require_once 'Zend/Wildfire/Plugin/FirePhp.php';
00034 
00044 class Zend_Log_Writer_Firebug extends Zend_Log_Writer_Abstract
00045 {
00046 
00051     protected $_priorityStyles = array(Zend_Log::EMERG  => Zend_Wildfire_Plugin_FirePhp::ERROR,
00052                                        Zend_Log::ALERT  => Zend_Wildfire_Plugin_FirePhp::ERROR,
00053                                        Zend_Log::CRIT   => Zend_Wildfire_Plugin_FirePhp::ERROR,
00054                                        Zend_Log::ERR    => Zend_Wildfire_Plugin_FirePhp::ERROR,
00055                                        Zend_Log::WARN   => Zend_Wildfire_Plugin_FirePhp::WARN,
00056                                        Zend_Log::NOTICE => Zend_Wildfire_Plugin_FirePhp::INFO,
00057                                        Zend_Log::INFO   => Zend_Wildfire_Plugin_FirePhp::INFO,
00058                                        Zend_Log::DEBUG  => Zend_Wildfire_Plugin_FirePhp::LOG);
00059 
00064     protected $_defaultPriorityStyle = Zend_Wildfire_Plugin_FirePhp::LOG;
00065 
00070     protected $_enabled = true;
00071 
00075     public function __construct()
00076     {
00077         if (php_sapi_name()=='cli') {
00078             $this->setEnabled(false);
00079         }
00080 
00081         $this->_formatter = new Zend_Log_Formatter_Firebug();
00082     }
00083 
00090     public function setEnabled($enabled)
00091     {
00092         $previous = $this->_enabled;
00093         $this->_enabled = $enabled;
00094         return $previous;
00095     }
00096 
00102     public function getEnabled()
00103     {
00104         return $this->_enabled;
00105     }
00106 
00113     public function setDefaultPriorityStyle($style)
00114     {
00115         $previous = $this->_defaultPriorityStyle;
00116         $this->_defaultPriorityStyle = $style;
00117         return $previous;
00118     }
00119 
00125     public function getDefaultPriorityStyle()
00126     {
00127         return $this->_defaultPriorityStyle;
00128     }
00129 
00137     public function setPriorityStyle($priority, $style)
00138     {
00139         $previous = true;
00140         if (array_key_exists($priority,$this->_priorityStyles)) {
00141             $previous = $this->_priorityStyles[$priority];
00142         }
00143         $this->_priorityStyles[$priority] = $style;
00144         return $previous;
00145     }
00146 
00153     public function getPriorityStyle($priority)
00154     {
00155         if (array_key_exists($priority,$this->_priorityStyles)) {
00156             return $this->_priorityStyles[$priority];
00157         }
00158         return false;
00159     }
00160 
00167     protected function _write($event)
00168     {
00169         if (!$this->getEnabled()) {
00170             return;
00171         }
00172 
00173         if (array_key_exists($event['priority'],$this->_priorityStyles)) {
00174             $type = $this->_priorityStyles[$event['priority']];
00175         } else {
00176             $type = $this->_defaultPriorityStyle;
00177         }
00178 
00179         $message = $this->_formatter->format($event);
00180 
00181         $label = isset($event['firebugLabel'])?$event['firebugLabel']:null;
00182 
00183         Zend_Wildfire_Plugin_FirePhp::getInstance()->send($message,
00184                                                           $label,
00185                                                           $type,
00186                                                           array('traceOffset'=>6));
00187     }
00188 }

Generated on Thu Apr 19 2012 17:01:17 for openbiz by  doxygen 1.7.2