public class XmlConfiguration extends Log4j1Configuration
Modifier and Type | Class and Description |
---|---|
private static class |
XmlConfiguration.ConsumerException |
private static interface |
XmlConfiguration.ParseAction |
private static class |
XmlConfiguration.SAXErrorHandler |
AbstractFilterable.Builder<B extends AbstractFilterable.Builder<B>>
LifeCycle.State
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
ADDITIVITY_ATTR |
private static java.lang.String |
APPENDER_TAG |
private java.util.Map<java.lang.String,Appender> |
appenderMap |
private static java.lang.String |
CATEGORY |
private static java.lang.String |
CATEGORY_FACTORY_TAG |
private static java.lang.String |
CLASS_ATTR |
private static java.lang.String |
CONFIG_DEBUG_ATTR |
private static java.lang.String |
CONFIGURATION_TAG |
private static java.lang.String |
dbfKey |
static long |
DEFAULT_DELAY |
protected static java.lang.String |
DEFAULT_PREFIX
File name prefix for standard configurations.
|
private static java.lang.String |
EMPTY_STR |
private static java.lang.String |
ERROR_HANDLER_TAG |
static java.lang.String |
FILTER_TAG |
private static java.lang.String |
INTERNAL_DEBUG_ATTR |
static java.lang.String |
LAYOUT_TAG |
private static java.lang.String |
LEVEL_TAG |
private static Logger |
LOGGER |
private static java.lang.String |
LOGGER_ELEMENT |
private static java.lang.String |
LOGGER_FACTORY_TAG |
static java.lang.String |
NAME_ATTR |
private static java.lang.String |
OLD_CONFIGURATION_TAG |
private static java.lang.Class[] |
ONE_STRING_PARAM |
static java.lang.String |
PARAM_TAG |
private static java.lang.String |
PRIORITY_TAG |
private java.util.Properties |
props |
static java.lang.String |
REF_ATTR |
private static java.lang.String |
RENDERER_TAG |
private static java.lang.String |
ROOT_TAG |
protected static java.lang.String |
TEST_PREFIX
File name prefix for test configurations.
|
private static java.lang.String |
THROWABLE_RENDERER_TAG |
static java.lang.String |
VALUE_ATTR |
APPENDER_REF_TAG, INHERITED, manager, MONITOR_INTERVAL, NULL, THRESHOLD_PARAM
isShutdownHookEnabled, listeners, pluginManager, pluginPackages, rootNode, scriptManager, shutdownTimeoutMillis
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT
CONTEXT_PROPERTIES
Constructor and Description |
---|
XmlConfiguration(LoggerContext loggerContext,
ConfigurationSource source,
int monitorIntervalSeconds) |
Modifier and Type | Method and Description |
---|---|
void |
addAppenderIfAbsent(Appender appender) |
private Appender |
buildAppender(java.lang.String className,
org.w3c.dom.Element appenderElement) |
private Layout |
buildLayout(java.lang.String className,
org.w3c.dom.Element layout_element) |
private RewritePolicy |
buildRewritePolicy(java.lang.String className,
org.w3c.dom.Element element) |
void |
doConfigure()
Configure log4j by reading in a log4j.dtd compliant XML
configuration file.
|
private void |
doConfigure(XmlConfiguration.ParseAction action) |
private Appender |
findAppenderByName(org.w3c.dom.Document doc,
java.lang.String appenderName)
Used internally to parse appenders by IDREF name.
|
Appender |
findAppenderByReference(org.w3c.dom.Element appenderRef)
Used internally to parse appenders by IDREF element.
|
static void |
forEachElement(org.w3c.dom.NodeList list,
java.util.function.Consumer<org.w3c.dom.Element> consumer) |
private void |
parse(org.w3c.dom.Element element)
Used internally to configure the log4j framework by parsing a DOM
tree of XML elements based on log4j.dtd.
|
Appender |
parseAppender(org.w3c.dom.Element appenderElement)
Used internally to parse an appender element.
|
private void |
parseCategory(org.w3c.dom.Element loggerElement)
Used internally to parse an category element.
|
private void |
parseChildrenOfLoggerElement(org.w3c.dom.Element catElement,
LoggerConfig loggerConfig,
boolean isRoot)
Used internally to parse the children of a LoggerConfig element.
|
java.lang.Object |
parseElement(org.w3c.dom.Element element,
java.util.Properties props,
java.lang.Class expectedClass)
Creates an object and processes any nested param elements
but does not call activateOptions.
|
private void |
parseErrorHandler(org.w3c.dom.Element element,
Appender appender)
Used internally to parse an
ErrorHandler element. |
Filter |
parseFilters(org.w3c.dom.Element filterElement)
Used internally to parse a filter element.
|
Layout |
parseLayout(org.w3c.dom.Element layoutElement)
Used internally to parse a layout element.
|
private void |
parseLevel(org.w3c.dom.Element element,
LoggerConfig logger,
boolean isRoot)
Used internally to parse a level element.
|
RewritePolicy |
parseRewritePolicy(org.w3c.dom.Element rewritePolicyElement) |
private void |
parseRoot(org.w3c.dom.Element rootElement)
Used internally to parse the roor category element.
|
private void |
parseUnrecognizedElement(java.lang.Object instance,
org.w3c.dom.Element element,
java.util.Properties props)
Delegates unrecognized content to created instance if it supports UnrecognizedElementParser.
|
private void |
quietParseUnrecognizedElement(java.lang.Object instance,
org.w3c.dom.Element element,
java.util.Properties props)
Delegates unrecognized content to created instance if
it supports UnrecognizedElementParser and catches and
logs any exception.
|
private void |
setParameter(org.w3c.dom.Element elem,
PropertySetter propSetter) |
void |
setParameter(org.w3c.dom.Element elem,
PropertySetter propSetter,
java.util.Properties props)
Sets a parameter based from configuration file content.
|
private java.lang.String |
subst(java.lang.String value) |
java.lang.String |
subst(java.lang.String value,
java.util.Properties props)
Substitutes property value for any references in expression.
|
getBuilderManager, initialize, reconfigure
addAppender, addComponent, addListener, addLogger, addLoggerAppender, addLoggerFilter, createAdvertiser, createConfiguration, getAdvertiser, getAppender, getAppenders, getAsyncLoggerConfigDelegate, getComponent, getConfigurationSource, getCustomLevels, getDefaultStatus, getLogger, getLoggerConfig, getLoggerContext, getLoggers, getName, getNanoClock, getPluginManager, getPluginPackages, getProperties, getReliabilityStrategy, getRootLogger, getRootNode, getScheduler, getScriptManager, getShutdownTimeoutMillis, getStrSubstitutor, getWatchManager, initializeWatchers, isShutdownHookEnabled, preConfigure, removeAppender, removeListener, removeLogger, setAdvertiser, setLoggerAdditive, setName, setNanoClock, setPluginManager, setScriptManager, setToDefault, setup, start, stop, toByteArray
addFilter, getFilter, getPropertyArray, hasFilter, isFiltered, removeFilter, stop
equalsImpl, getState, getStatusLogger, hashCodeImpl, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, stop, stop
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addFilter, getFilter, hasFilter, isFiltered, removeFilter
private static final Logger LOGGER
private static final java.lang.String CONFIGURATION_TAG
private static final java.lang.String OLD_CONFIGURATION_TAG
private static final java.lang.String RENDERER_TAG
private static final java.lang.String APPENDER_TAG
public static final java.lang.String PARAM_TAG
public static final java.lang.String LAYOUT_TAG
private static final java.lang.String CATEGORY
private static final java.lang.String LOGGER_ELEMENT
private static final java.lang.String CATEGORY_FACTORY_TAG
private static final java.lang.String LOGGER_FACTORY_TAG
public static final java.lang.String NAME_ATTR
private static final java.lang.String CLASS_ATTR
public static final java.lang.String VALUE_ATTR
private static final java.lang.String ROOT_TAG
private static final java.lang.String LEVEL_TAG
private static final java.lang.String PRIORITY_TAG
public static final java.lang.String FILTER_TAG
private static final java.lang.String ERROR_HANDLER_TAG
public static final java.lang.String REF_ATTR
private static final java.lang.String ADDITIVITY_ATTR
private static final java.lang.String CONFIG_DEBUG_ATTR
private static final java.lang.String INTERNAL_DEBUG_ATTR
private static final java.lang.String EMPTY_STR
private static final java.lang.Class[] ONE_STRING_PARAM
private static final java.lang.String dbfKey
private static final java.lang.String THROWABLE_RENDERER_TAG
public static final long DEFAULT_DELAY
protected static final java.lang.String TEST_PREFIX
protected static final java.lang.String DEFAULT_PREFIX
private java.util.Map<java.lang.String,Appender> appenderMap
private java.util.Properties props
public XmlConfiguration(LoggerContext loggerContext, ConfigurationSource source, int monitorIntervalSeconds)
public void addAppenderIfAbsent(Appender appender)
public void doConfigure() throws javax.xml.parsers.FactoryConfigurationError
doConfigure
in class AbstractConfiguration
javax.xml.parsers.FactoryConfigurationError
private void doConfigure(XmlConfiguration.ParseAction action) throws javax.xml.parsers.FactoryConfigurationError
javax.xml.parsers.FactoryConfigurationError
private void parseUnrecognizedElement(java.lang.Object instance, org.w3c.dom.Element element, java.util.Properties props) throws java.lang.Exception
instance
- instance, may be null.element
- element, may not be null.props
- propertiesjava.io.IOException
- thrown if configuration of owner object should be abandoned.java.lang.Exception
private void quietParseUnrecognizedElement(java.lang.Object instance, org.w3c.dom.Element element, java.util.Properties props)
instance
- instance, may be null.element
- element, may not be null.props
- propertiespublic java.lang.String subst(java.lang.String value, java.util.Properties props)
value
- value from configuration file, may contain
literal text, property references or bothprops
- properties.public void setParameter(org.w3c.dom.Element elem, PropertySetter propSetter, java.util.Properties props)
elem
- param element, may not be null.propSetter
- property setter, may not be null.props
- propertiespublic java.lang.Object parseElement(org.w3c.dom.Element element, java.util.Properties props, java.lang.Class expectedClass) throws java.lang.Exception
element
- element, may not be null.props
- propertiesexpectedClass
- interface or class expected to be implemented
by created classjava.lang.Exception
- thrown if the contain object should be abandoned.private Appender findAppenderByName(org.w3c.dom.Document doc, java.lang.String appenderName)
public Appender findAppenderByReference(org.w3c.dom.Element appenderRef)
public Appender parseAppender(org.w3c.dom.Element appenderElement)
private Appender buildAppender(java.lang.String className, org.w3c.dom.Element appenderElement)
public RewritePolicy parseRewritePolicy(org.w3c.dom.Element rewritePolicyElement)
private RewritePolicy buildRewritePolicy(java.lang.String className, org.w3c.dom.Element element)
private void parseErrorHandler(org.w3c.dom.Element element, Appender appender)
ErrorHandler
element.public Filter parseFilters(org.w3c.dom.Element filterElement)
private void parseCategory(org.w3c.dom.Element loggerElement)
private void parseRoot(org.w3c.dom.Element rootElement)
private void parseChildrenOfLoggerElement(org.w3c.dom.Element catElement, LoggerConfig loggerConfig, boolean isRoot)
public Layout parseLayout(org.w3c.dom.Element layoutElement)
private Layout buildLayout(java.lang.String className, org.w3c.dom.Element layout_element)
private void parseLevel(org.w3c.dom.Element element, LoggerConfig logger, boolean isRoot)
private void setParameter(org.w3c.dom.Element elem, PropertySetter propSetter)
private void parse(org.w3c.dom.Element element)
private java.lang.String subst(java.lang.String value)
public static void forEachElement(org.w3c.dom.NodeList list, java.util.function.Consumer<org.w3c.dom.Element> consumer)