Package org.apache.log
Class Hierarchy
java.lang.Object
org.apache.log.Hierarchy
This class encapsulates a basic independent log hierarchy.
The hierarchy is essentially a safe wrapper around root logger.
- Author:
- Avalon Development Team, Peter Donald
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate class
private class
Inner class to redirect to hierarchys real LoggerListener if any. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Hierarchy
static final String
private ErrorHandler
private LoggerListener
private Logger
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addLoggerListener
(LoggerListener loggerListener) Set the LoggerListener associated with hierarchy.static Hierarchy
Retrieve the default hierarchy.getLoggerFor
(String category) Retrieve a logger for named category.final Logger
Utility method to retrieve logger for hierarchy.private void
notifyLoggerCreated
(String category, Logger logger) Notify logger listener (if any) that a new logger was created.void
removeLoggerListener
(LoggerListener loggerListener) Remove the LoggerListener associated with hierarchy.void
setDefaultLogTarget
(LogTarget target) Set the default log target for hierarchy.void
setDefaultLogTargets
(LogTarget[] targets) Set the default log targets for this hierarchy.void
setDefaultPriority
(Priority priority) Set the default priority for hierarchy.void
setErrorHandler
(ErrorHandler errorHandler) Set the ErrorHandler associated with hierarchy.
-
Field Details
-
DEFAULT_FORMAT
- See Also:
-
c_hierarchy
-
m_errorHandler
-
m_rootLogger
-
m_loggerListener
-
-
Constructor Details
-
Hierarchy
public Hierarchy()Create a hierarchy object. The default LogTarget writes to stdout.
-
-
Method Details
-
getDefaultHierarchy
Retrieve the default hierarchy.In most cases the default LogHierarchy is the only one used in an application. However when security is a concern or multiple independent applications will be running in same JVM it is advantageous to create new Hierarchies rather than reuse default.
- Returns:
- the default Hierarchy
-
setDefaultLogTarget
Set the default log target for hierarchy. This is the target inherited by loggers if no other target is specified.- Parameters:
target
- the default target
-
setDefaultLogTargets
Set the default log targets for this hierarchy. These are the targets inherited by loggers if no other targets are specified- Parameters:
targets
- the default targets
-
setDefaultPriority
Set the default priority for hierarchy. This is the priority inherited by loggers if no other priority is specified.- Parameters:
priority
- the default priority
-
setErrorHandler
Set the ErrorHandler associated with hierarchy.- Parameters:
errorHandler
- the ErrorHandler
-
addLoggerListener
Set the LoggerListener associated with hierarchy. This is a unicast listener, so only one LoggerListener is allowed.- Parameters:
loggerListener
- the LoggerListener- Throws:
UnsupportedOperationException
- if no more LoggerListeners are permitted.
-
removeLoggerListener
Remove the LoggerListener associated with hierarchy. Perform this step before adding a new one if you want to change it.- Parameters:
loggerListener
- the LoggerListener
-
getLoggerFor
Retrieve a logger for named category.- Parameters:
category
- the context- Returns:
- the Logger
-
notifyLoggerCreated
Notify logger listener (if any) that a new logger was created.- Parameters:
category
- the category of new loggerlogger
- the logger
-
getRootLogger
Utility method to retrieve logger for hierarchy. This method is intended for use by sub-classes which can take responsibility for manipulating Logger directly.- Returns:
- the Logger
-