public function testToBoolean()
 {
     self::assertTrue(LoggerOptionConverter::toBoolean(null, true));
     self::assertTrue(LoggerOptionConverter::toBoolean('foo', true));
     self::assertTrue(LoggerOptionConverter::toBoolean(null));
     self::assertTrue(LoggerOptionConverter::toBoolean(true));
     self::assertTrue(LoggerOptionConverter::toBoolean("1"));
     self::assertTrue(LoggerOptionConverter::toBoolean(1));
     self::assertTrue(LoggerOptionConverter::toBoolean("true"));
     self::assertTrue(LoggerOptionConverter::toBoolean("on"));
     self::assertTrue(LoggerOptionConverter::toBoolean("yes"));
     self::assertFalse(LoggerOptionConverter::toBoolean(null, false));
     self::assertFalse(LoggerOptionConverter::toBoolean('foo', false));
     self::assertFalse(LoggerOptionConverter::toBoolean(false));
     self::assertFalse(LoggerOptionConverter::toBoolean(""));
     self::assertFalse(LoggerOptionConverter::toBoolean("0"));
     self::assertFalse(LoggerOptionConverter::toBoolean(0));
     self::assertFalse(LoggerOptionConverter::toBoolean("false"));
     self::assertFalse(LoggerOptionConverter::toBoolean("off"));
     self::assertFalse(LoggerOptionConverter::toBoolean("no"));
     self::assertTrue(LoggerOptionConverter::toBooleanEx(1));
     self::assertTrue(LoggerOptionConverter::toBooleanEx("1"));
     self::assertTrue(LoggerOptionConverter::toBooleanEx(true));
     self::assertTrue(LoggerOptionConverter::toBooleanEx("true"));
     self::assertTrue(LoggerOptionConverter::toBooleanEx("on"));
     self::assertTrue(LoggerOptionConverter::toBooleanEx("yes"));
     self::assertFalse(LoggerOptionConverter::toBooleanEx(0));
     self::assertFalse(LoggerOptionConverter::toBooleanEx("0"));
     self::assertFalse(LoggerOptionConverter::toBooleanEx(false));
     self::assertFalse(LoggerOptionConverter::toBooleanEx("false"));
     self::assertFalse(LoggerOptionConverter::toBooleanEx("off"));
     self::assertFalse(LoggerOptionConverter::toBooleanEx("no"));
 }
 public function testToBoolean()
 {
     self::assertEquals(true, LoggerOptionConverter::toBoolean(null, true));
     self::assertEquals(true, LoggerOptionConverter::toBoolean(null));
     self::assertEquals(true, LoggerOptionConverter::toBoolean(true));
     self::assertEquals(true, LoggerOptionConverter::toBoolean("1"));
     self::assertEquals(true, LoggerOptionConverter::toBoolean("true"));
     self::assertEquals(true, LoggerOptionConverter::toBoolean("on"));
     self::assertEquals(true, LoggerOptionConverter::toBoolean("yes"));
     self::assertEquals(false, LoggerOptionConverter::toBoolean(null, false));
     self::assertEquals(false, LoggerOptionConverter::toBoolean(false));
     self::assertEquals(false, LoggerOptionConverter::toBoolean(""));
     self::assertEquals(false, LoggerOptionConverter::toBoolean("0"));
     self::assertEquals(false, LoggerOptionConverter::toBoolean("false"));
     self::assertEquals(false, LoggerOptionConverter::toBoolean("off"));
     self::assertEquals(false, LoggerOptionConverter::toBoolean("no"));
 }
 /**
  * Parse the additivity option for a non-root category.
  *
  * @param array $props array of properties
  * @param Logger &$cat
  * @param string $loggerName
  */
 function parseAdditivityForLogger($props, &$cat, $loggerName)
 {
     $value = LoggerOptionConverter::findAndSubst(LOG4PHP_LOGGER_PROPERTY_CONFIGURATOR_ADDITIVITY_PREFIX . $loggerName, $props);
     LoggerLog::debug("LoggerPropertyConfigurator::parseAdditivityForLogger() " . "Handling " . LOG4PHP_LOGGER_PROPERTY_CONFIGURATOR_ADDITIVITY_PREFIX . $loggerName . "=[{$value}]");
     // touch additivity only if necessary
     if (!empty($value)) {
         $additivity = LoggerOptionConverter::toBoolean($value, true);
         LoggerLog::debug("LoggerPropertyConfigurator::parseAdditivityForLogger() " . "Setting additivity for [{$loggerName}] to [{$additivity}]");
         $cat->setAdditivity($additivity);
     }
 }
 /**
  * @param boolean $acceptOnMatch
  */
 public function setAcceptOnMatch($acceptOnMatch)
 {
     $this->acceptOnMatch = LoggerOptionConverter::toBoolean($acceptOnMatch, true);
 }
 /**
  * @param mixed
  */
 function setUseXml($flag)
 {
     $this->useXml = LoggerOptionConverter::toBoolean($flag, $this->getUseXml());
 }
 /**
  * @param mixed $parser
  * @param string $tag
  * @param array $attribs
  *
  * @todo In 'LOGGER' case find a better way to detect 'getLogger()' method
  */
 private function tagOpen($parser, $tag, $attribs)
 {
     switch ($tag) {
         case 'CONFIGURATION':
         case self::XMLNS . ':CONFIGURATION':
             if (isset($attribs['THRESHOLD'])) {
                 $this->repository->setThreshold(LoggerOptionConverter::toLevel($this->subst($attribs['THRESHOLD']), $this->repository->getThreshold()));
             }
             break;
         case 'APPENDER':
         case self::XMLNS . ':APPENDER':
             unset($this->appender);
             $this->appender = null;
             $name = $this->subst(@$attribs['NAME']);
             $class = $this->subst(@$attribs['CLASS']);
             $this->appender = LoggerAppenderPool::getAppenderFromPool($name, $class);
             if (isset($attribs['THRESHOLD'])) {
                 $this->appender->setThreshold(LoggerOptionConverter::toLevel($this->subst($attribs['THRESHOLD']), $this->appender->getThreshold()));
             }
             $this->state[] = self::APPENDER_STATE;
             break;
         case 'APPENDER_REF':
         case 'APPENDER-REF':
         case self::XMLNS . ':APPENDER_REF':
         case self::XMLNS . ':APPENDER-REF':
             if (isset($attribs['REF']) and !empty($attribs['REF'])) {
                 $appenderName = $this->subst($attribs['REF']);
                 $appender = LoggerAppenderPool::getAppenderFromPool($appenderName);
                 if ($appender !== null) {
                     switch (end($this->state)) {
                         case self::LOGGER_STATE:
                         case self::ROOT_STATE:
                             $this->logger->addAppender($appender);
                             break;
                     }
                 }
             }
             break;
         case 'FILTER':
         case self::XMLNS . ':FILTER':
             unset($this->filter);
             $this->filter = null;
             $filterName = basename($this->subst(@$attribs['CLASS']));
             if (!empty($filterName)) {
                 $this->filter = new $filterName();
                 $this->state[] = self::FILTER_STATE;
             }
             break;
         case 'LAYOUT':
         case self::XMLNS . ':LAYOUT':
             $class = @$attribs['CLASS'];
             $this->layout = LoggerReflectionUtils::createObject($this->subst($class));
             $this->state[] = self::LAYOUT_STATE;
             break;
         case 'LOGGER':
         case self::XMLNS . ':LOGGER':
             // $this->logger is assigned by reference.
             // Only '$this->logger=null;' destroys referenced object
             unset($this->logger);
             $this->logger = null;
             $loggerName = $this->subst(@$attribs['NAME']);
             if (!empty($loggerName)) {
                 $this->logger = $this->repository->getLogger($loggerName);
                 if ($this->logger !== null and isset($attribs['ADDITIVITY'])) {
                     $additivity = LoggerOptionConverter::toBoolean($this->subst($attribs['ADDITIVITY']), true);
                     $this->logger->setAdditivity($additivity);
                 }
             }
             $this->state[] = self::LOGGER_STATE;
             break;
         case 'LEVEL':
         case self::XMLNS . ':LEVEL':
         case 'PRIORITY':
         case self::XMLNS . ':PRIORITY':
             if (!isset($attribs['VALUE'])) {
                 // LoggerDOMConfigurator::tagOpen() LEVEL value not set
                 break;
             }
             if ($this->logger === null) {
                 // LoggerDOMConfigurator::tagOpen() LEVEL. parent logger is null
                 break;
             }
             switch (end($this->state)) {
                 case self::ROOT_STATE:
                     $this->logger->setLevel(LoggerOptionConverter::toLevel($this->subst($attribs['VALUE']), $this->logger->getLevel()));
                     break;
                 case self::LOGGER_STATE:
                     $this->logger->setLevel(LoggerOptionConverter::toLevel($this->subst($attribs['VALUE']), $this->logger->getLevel()));
                     break;
                 default:
                     //LoggerLog::warn("LoggerDOMConfigurator::tagOpen() LEVEL state '{$this->state}' not allowed here");
             }
             break;
         case 'PARAM':
         case self::XMLNS . ':PARAM':
             if (!isset($attribs['NAME'])) {
                 // LoggerDOMConfigurator::tagOpen() PARAM attribute 'name' not defined.
                 break;
             }
             if (!isset($attribs['VALUE'])) {
                 // LoggerDOMConfigurator::tagOpen() PARAM. attribute 'value' not defined.
                 break;
             }
             switch (end($this->state)) {
                 case self::APPENDER_STATE:
                     if ($this->appender !== null) {
                         LoggerReflectionUtils::setter($this->appender, $this->subst($attribs['NAME']), $this->subst($attribs['VALUE']));
                     }
                     break;
                 case self::LAYOUT_STATE:
                     if ($this->layout !== null) {
                         LoggerReflectionUtils::setter($this->layout, $this->subst($attribs['NAME']), $this->subst($attribs['VALUE']));
                     }
                     break;
                 case self::FILTER_STATE:
                     if ($this->filter !== null) {
                         LoggerReflectionUtils::setter($this->filter, $this->subst($attribs['NAME']), $this->subst($attribs['VALUE']));
                     }
                     break;
                 default:
                     //LoggerLog::warn("LoggerDOMConfigurator::tagOpen() PARAM state '{$this->state}' not allowed here");
             }
             break;
         case 'RENDERER':
         case self::XMLNS . ':RENDERER':
             $renderedClass = $this->subst(@$attribs['RENDEREDCLASS']);
             $renderingClass = $this->subst(@$attribs['RENDERINGCLASS']);
             if (!empty($renderedClass) and !empty($renderingClass)) {
                 $this->repository->getRendererMap()->addRenderer($renderedClass, $renderingClass);
             }
             break;
         case 'ROOT':
         case self::XMLNS . ':ROOT':
             $this->logger = Logger::getRootLogger();
             $this->state[] = self::ROOT_STATE;
             break;
     }
 }
Пример #7
0
 function setCreateTable($flag)
 {
     $this->createTable = LoggerOptionConverter::toBoolean($flag, true);
 }
Пример #8
0
 /**
  * Parse the additivity option for a non-root category.
  *
  * @param array $props array of properties
  * @param Logger $cat
  * @param string $loggerName
  */
 private function parseAdditivityForLogger($props, Logger $cat, $loggerName)
 {
     $value = LoggerOptionConverter::findAndSubst(self::ADDITIVITY_PREFIX . $loggerName, $props);
     // touch additivity only if necessary
     if (!empty($value)) {
         $additivity = LoggerOptionConverter::toBoolean($value, true);
         $cat->setAdditivity($additivity);
     }
 }
Пример #9
0
 /**
  * @param boolean
  */
 public function setLog4jNamespace($flag)
 {
     $this->log4jNamespace = LoggerOptionConverter::toBoolean($flag, true);
 }
Пример #10
0
 function setAppend($flag)
 {
     $this->append = LoggerOptionConverter::toBoolean($flag, true);
 }
 /**
  * Configures a logger. 
  * 
  * @param Logger $logger The logger to configure
  * @param array $config Logger configuration options.
  */
 private function configureLogger(Logger $logger, $config)
 {
     $loggerName = $logger->getName();
     // Set logger level
     if (isset($config['level'])) {
         $level = LoggerLevel::toLevel($config['level']);
         if (isset($level)) {
             $logger->setLevel($level);
         } else {
             $default = $logger->getLevel();
             $this->warn("Invalid level value [{$config['level']}] specified for logger [{$loggerName}]. Ignoring level definition.");
         }
     }
     // Link appenders to logger
     if (isset($config['appenders'])) {
         foreach ($config['appenders'] as $appenderName) {
             if (isset($this->appenders[$appenderName])) {
                 $logger->addAppender($this->appenders[$appenderName]);
             } else {
                 $this->warn("Nonexistnant appender [{$appenderName}] linked to logger [{$loggerName}].");
             }
         }
     }
     // Set logger additivity
     if (isset($config['additivity'])) {
         $additivity = LoggerOptionConverter::toBoolean($config['additivity'], null);
         if (is_bool($additivity)) {
             $logger->setAdditivity($additivity);
         } else {
             $this->warn("Invalid additivity value [{$config['additivity']}] specified for logger [{$loggerName}]. Ignoring additivity setting.");
         }
     }
 }
Пример #12
0
    }
}
// ---------------------------------------------------------------------------
// ---------------------------------------------------------------------------
// ---------------------------------------------------------------------------
if (!defined('LOG4PHP_DEFAULT_INIT_OVERRIDE')) {
    if (isset($_ENV['log4php.defaultInitOverride'])) {
        /**
         * @ignore
         */
        define('LOG4PHP_DEFAULT_INIT_OVERRIDE', LoggerOptionConverter::toBoolean($_ENV['log4php.defaultInitOverride'], false));
    } elseif (isset($GLOBALS['log4php.defaultInitOverride'])) {
        /**
         * @ignore
         */
        define('LOG4PHP_DEFAULT_INIT_OVERRIDE', LoggerOptionConverter::toBoolean($GLOBALS['log4php.defaultInitOverride'], false));
    } else {
        /**
         * Controls init execution
         *
         * With this constant users can skip the default init procedure that is
         * called when this file is included.
         *
         * <p>If it is not user defined, log4php tries to autoconfigure using (in order):</p>
         *
         * - the <code>$_ENV['log4php.defaultInitOverride']</code> variable.
         * - the <code>$GLOBALS['log4php.defaultInitOverride']</code> global variable.
         * - defaults to <i>false</i>
         *
         * @var boolean
         */
Пример #13
0
 /**
  * The <b>ContextPrinting</b> option specifies log output will include
  * the nested context information belonging to the current thread.
  * This is true by default.
  */
 public function setContextPrinting($contextPrinting)
 {
     $this->contextPrinting = LoggerOptionConverter::toBoolean($contextPrinting);
 }
 /**
  * @param mixed $parser
  * @param string $tag
  * @param array $attribs
  *
  * @todo In 'LOGGER' case find a better way to detect 'getLogger()' method
  */
 function tagOpen($parser, $tag, $attribs)
 {
     switch ($tag) {
         case 'CONFIGURATION':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':CONFIGURATION':
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen() CONFIGURATION");
             if (isset($attribs['THRESHOLD'])) {
                 $this->repository->setThreshold(LoggerOptionConverter::toLevel($this->subst($attribs['THRESHOLD']), $this->repository->getThreshold()));
             }
             if (isset($attribs['DEBUG'])) {
                 $debug = LoggerOptionConverter::toBoolean($this->subst($attribs['DEBUG']), LoggerLog::internalDebugging());
                 $this->repository->debug = $debug;
                 LoggerLog::internalDebugging($debug);
                 LoggerLog::debug("LoggerDOMConfigurator::tagOpen() LOG4PHP:CONFIGURATION. Internal Debug turned " . ($debug ? 'on' : 'off'));
             }
             break;
         case 'APPENDER':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':APPENDER':
             unset($this->appender);
             $this->appender = null;
             $name = $this->subst(@$attribs['NAME']);
             $class = $this->subst(@$attribs['CLASS']);
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen():tag=[{$tag}]:name=[{$name}]:class=[{$class}]");
             $this->appender =& LoggerAppender::singleton($name, $class);
             if ($this->appender === null) {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() APPENDER cannot instantiate appender '{$name}'");
             }
             $this->state[] = LOG4PHP_LOGGER_DOM_CONFIGURATOR_APPENDER_STATE;
             break;
         case 'APPENDER_REF':
         case 'APPENDER-REF':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':APPENDER_REF':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':APPENDER-REF':
             if (isset($attribs['REF']) and !empty($attribs['REF'])) {
                 $appenderName = $this->subst($attribs['REF']);
                 LoggerLog::debug("LoggerDOMConfigurator::tagOpen() APPENDER-REF ref='{$appenderName}'");
                 $appender =& LoggerAppender::singleton($appenderName);
                 if ($appender !== null) {
                     switch (end($this->state)) {
                         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_LOGGER_STATE:
                         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_ROOT_STATE:
                             $this->logger->addAppender($appender);
                             break;
                     }
                 } else {
                     LoggerLog::warn("LoggerDOMConfigurator::tagOpen() APPENDER-REF ref '{$appenderName}' points to a null appender");
                 }
             } else {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() APPENDER-REF ref not set or empty");
             }
             break;
         case 'FILTER':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':FILTER':
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen() FILTER");
             unset($this->filter);
             $this->filter = null;
             $filterName = basename($this->subst(@$attribs['CLASS']));
             if (!empty($filterName)) {
                 if (!class_exists($filterName)) {
                     @(include_once LOG4PHP_DIR . "/varia/{$filterName}.php");
                 }
                 if (class_exists($filterName)) {
                     $this->filter = new $filterName();
                 } else {
                     LoggerLog::warn("LoggerDOMConfigurator::tagOpen() FILTER. class '{$filterName}' doesnt exist");
                 }
                 $this->state[] = LOG4PHP_LOGGER_DOM_CONFIGURATOR_FILTER_STATE;
             } else {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() FILTER filter name cannot be empty");
             }
             break;
         case 'LAYOUT':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':LAYOUT':
             $class = @$attribs['CLASS'];
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen() LAYOUT class='{$class}'");
             $this->layout = LoggerLayout::factory($this->subst($class));
             if ($this->layout === null) {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() LAYOUT unable to instanciate class='{$class}'");
             }
             $this->state[] = LOG4PHP_LOGGER_DOM_CONFIGURATOR_LAYOUT_STATE;
             break;
         case 'LOGGER':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':LOGGER':
             // $this->logger is assigned by reference.
             // Only '$this->logger=null;' destroys referenced object
             unset($this->logger);
             $this->logger = null;
             $loggerName = $this->subst(@$attribs['NAME']);
             if (!empty($loggerName)) {
                 LoggerLog::debug("LoggerDOMConfigurator::tagOpen() LOGGER. name='{$loggerName}'");
                 $class = $this->subst(@$attribs['CLASS']);
                 if (empty($class)) {
                     $this->logger =& $this->repository->getLogger($loggerName);
                 } else {
                     $className = basename($class);
                     if (!class_exists($className)) {
                         @(include_once "{$class}.php");
                     }
                     if (!class_exists($className)) {
                         LoggerLog::warn("LoggerDOMConfigurator::tagOpen() LOGGER. " . "cannot find '{$className}'.");
                     } else {
                         if (in_array('getlogger', get_class_methods($className))) {
                             $this->logger =& call_user_func(array($className, 'getlogger'), $loggerName);
                         } else {
                             LoggerLog::warn("LoggerDOMConfigurator::tagOpen() LOGGER. " . "class '{$className}' doesnt implement 'getLogger()' method.");
                         }
                     }
                 }
                 if ($this->logger !== null and isset($attribs['ADDITIVITY'])) {
                     $additivity = LoggerOptionConverter::toBoolean($this->subst($attribs['ADDITIVITY']), true);
                     $this->logger->setAdditivity($additivity);
                 }
             } else {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() LOGGER. Attribute 'name' is not set or is empty.");
             }
             $this->state[] = LOG4PHP_LOGGER_DOM_CONFIGURATOR_LOGGER_STATE;
             break;
         case 'LEVEL':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':LEVEL':
         case 'PRIORITY':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':PRIORITY':
             if (!isset($attribs['VALUE'])) {
                 LoggerLog::debug("LoggerDOMConfigurator::tagOpen() LEVEL value not set");
                 break;
             }
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen() LEVEL value={$attribs['VALUE']}");
             if ($this->logger === null) {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() LEVEL. parent logger is null");
                 break;
             }
             switch (end($this->state)) {
                 case LOG4PHP_LOGGER_DOM_CONFIGURATOR_ROOT_STATE:
                     $this->logger->setLevel(LoggerOptionConverter::toLevel($this->subst($attribs['VALUE']), $this->logger->getLevel()));
                     LoggerLog::debug("LoggerDOMConfigurator::tagOpen() LEVEL root level is now '{$attribs['VALUE']}' ");
                     break;
                 case LOG4PHP_LOGGER_DOM_CONFIGURATOR_LOGGER_STATE:
                     $this->logger->setLevel(LoggerOptionConverter::toLevel($this->subst($attribs['VALUE']), $this->logger->getLevel()));
                     break;
                 default:
                     LoggerLog::warn("LoggerDOMConfigurator::tagOpen() LEVEL state '{$this->state}' not allowed here");
             }
             break;
         case 'PARAM':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':PARAM':
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen() PARAM");
             if (!isset($attribs['NAME'])) {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() PARAM. " . "attribute 'name' not defined.");
                 break;
             }
             if (!isset($attribs['VALUE'])) {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() PARAM. " . "attribute 'value' not defined.");
                 break;
             }
             switch (end($this->state)) {
                 case LOG4PHP_LOGGER_DOM_CONFIGURATOR_APPENDER_STATE:
                     if ($this->appender !== null) {
                         $this->setter($this->appender, $this->subst($attribs['NAME']), $this->subst($attribs['VALUE']));
                     } else {
                         LoggerLog::warn("LoggerDOMConfigurator::tagOpen() PARAM. " . " trying to set property to a null appender.");
                     }
                     break;
                 case LOG4PHP_LOGGER_DOM_CONFIGURATOR_LAYOUT_STATE:
                     if ($this->layout !== null) {
                         $this->setter($this->layout, $this->subst($attribs['NAME']), $this->subst($attribs['VALUE']));
                     } else {
                         LoggerLog::warn("LoggerDOMConfigurator::tagOpen() PARAM. " . " trying to set property to a null layout.");
                     }
                     break;
                 case LOG4PHP_LOGGER_DOM_CONFIGURATOR_FILTER_STATE:
                     if ($this->filter !== null) {
                         $this->setter($this->filter, $this->subst($attribs['NAME']), $this->subst($attribs['VALUE']));
                     } else {
                         LoggerLog::warn("LoggerDOMConfigurator::tagOpen() PARAM. " . " trying to set property to a null filter.");
                     }
                     break;
                 default:
                     LoggerLog::warn("LoggerDOMConfigurator::tagOpen() PARAM state '{$this->state}' not allowed here");
             }
             break;
         case 'RENDERER':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':RENDERER':
             $renderedClass = $this->subst(@$attribs['RENDEREDCLASS']);
             $renderingClass = $this->subst(@$attribs['RENDERINGCLASS']);
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen() RENDERER renderedClass='{$renderedClass}' renderingClass='{$renderingClass}'");
             if (!empty($renderedClass) and !empty($renderingClass)) {
                 $renderer = LoggerObjectRenderer::factory($renderingClass);
                 if ($renderer === null) {
                     LoggerLog::warn("LoggerDOMConfigurator::tagOpen() RENDERER cannot instantiate '{$renderingClass}'");
                 } else {
                     $this->repository->setRenderer($renderedClass, $renderer);
                 }
             } else {
                 LoggerLog::warn("LoggerDOMConfigurator::tagOpen() RENDERER renderedClass or renderingClass is empty");
             }
             break;
         case 'ROOT':
         case LOG4PHP_LOGGER_DOM_CONFIGURATOR_XMLNS . ':ROOT':
             LoggerLog::debug("LoggerDOMConfigurator::tagOpen() ROOT");
             $this->logger =& LoggerManager::getRootLogger();
             $this->state[] = LOG4PHP_LOGGER_DOM_CONFIGURATOR_ROOT_STATE;
             break;
     }
 }
Пример #15
0
 public function setHtmlLineBreaks($value)
 {
     $this->htmlLineBreaks = LoggerOptionConverter::toBoolean($value, false);
 }