org.apache.log4j.xml
Class QpidLog4JConfigurator

java.lang.Object
  extended by org.apache.log4j.xml.QpidLog4JConfigurator

public class QpidLog4JConfigurator
extends Object

Substitute for the Log4J XMLWatchdog (as used by DOMConfigurator.configureAndWatch) Extends the default behaviour with a strict parser check on the XML file before allowing the reconfiguration to proceed, ensuring that any parser error or warning prevents initiation of a configuration update by Log4J, which aborts mid-update upon fatal errors from the parser and proceeds in the event of 'regular' parser errors and warnings, in all cases allowing startup to proceed with whatever half-baked configuration then exists.


Nested Class Summary
static class QpidLog4JConfigurator.IllegalLoggerLevelException
           
static class QpidLog4JConfigurator.QpidLog4JSaxErrorHandler
           
 
Field Summary
static ReentrantLock LOCK
           
 
Method Summary
protected static void checkLoggerLevels(String filename)
           
static void configure(String filename)
           
static void configureAndWatch(String filename, long delay)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOCK

public static final ReentrantLock LOCK
Method Detail

configure

public static void configure(String filename)
                      throws IOException,
                             ParserConfigurationException,
                             SAXException,
                             QpidLog4JConfigurator.IllegalLoggerLevelException
Throws:
IOException
ParserConfigurationException
SAXException
QpidLog4JConfigurator.IllegalLoggerLevelException

configureAndWatch

public static void configureAndWatch(String filename,
                                     long delay)
                              throws IOException,
                                     ParserConfigurationException,
                                     SAXException,
                                     QpidLog4JConfigurator.IllegalLoggerLevelException
Throws:
IOException
ParserConfigurationException
SAXException
QpidLog4JConfigurator.IllegalLoggerLevelException

checkLoggerLevels

protected static void checkLoggerLevels(String filename)
                                 throws QpidLog4JConfigurator.IllegalLoggerLevelException,
                                        IOException
Throws:
QpidLog4JConfigurator.IllegalLoggerLevelException
IOException


Licensed to the Apache Software Foundation