Class ConfigurationLogger
A class providing basic logging capabilities.
When reading configuration files in complex scenarios having log output is useful for diagnostic purposes. Therefore,
Commons Configuration produces some logging output. As concrete projects have different requirements on the
amount and detail of logging, there is a way of configuring logging: All classes derived from
AbstractConfiguration
can be assigned a logger which is then used for all
log statements generated.
Allowing a logger object to be passed to a configuration creates a direct dependency to a concrete logging framework
in the configuration API. This would make it impossible to switch to an alternative logging framework without
breaking backwards compatibility. To avoid this, the ConfigurationLogger
class is introduced. It is a minimum
abstraction over a logging framework offering only very basic logging capabilities. The methods defined in this class
are used by configuration implementations to produce their logging statements. Client applications can create
specialized instances and pass them to configuration objects without having to deal with a concrete logging
framework. It is even possible to create a subclass that uses a completely different logging framework.
- Since:
- 2.0
-
Constructor Summary
ModifierConstructorDescriptionprotected
Creates a new, uninitialized instance ofConfigurationLogger
.ConfigurationLogger
(Class<?> logCls) Creates a new instance ofConfigurationLogger
that uses a logger whose name is derived from the provided class.ConfigurationLogger
(String loggerName) Creates a new instance ofConfigurationLogger
that uses the specified logger name. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Logs the specified message on debug level.void
Logs the specified message on error level.void
Logs the specified exception on error level.void
Logs the specified message on info level.boolean
Returns a flag whether logging on debug level is enabled.boolean
Returns a flag whether logging on info level is enabled.static ConfigurationLogger
Creates a new dummy logger which produces no output.void
Logs the specified message on warn level.void
Logs the specified exception on warn level.
-
Constructor Details
-
ConfigurationLogger
protected ConfigurationLogger()Creates a new, uninitialized instance ofConfigurationLogger
. This constructor can be used by derived classes that implement their own specific logging mechanism. Such classes must override all methods because the default implementations do not work in this uninitialized state. -
ConfigurationLogger
Creates a new instance ofConfigurationLogger
that uses a logger whose name is derived from the provided class.- Parameters:
logCls
- the class whose name is to be used for logging (must not be null)- Throws:
IllegalArgumentException
- if the logger class is null
-
ConfigurationLogger
Creates a new instance ofConfigurationLogger
that uses the specified logger name.- Parameters:
loggerName
- the logger name (must not be null)- Throws:
IllegalArgumentException
- if the logger name is null
-
-
Method Details
-
newDummyLogger
Creates a new dummy logger which produces no output. If such a logger is passed to a configuration object, logging is effectively disabled.- Returns:
- the new dummy logger
-
debug
Logs the specified message on debug level.- Parameters:
msg
- the message to be logged
-
error
Logs the specified message on error level.- Parameters:
msg
- the message to be logged
-
error
Logs the specified exception on error level.- Parameters:
msg
- the message to be loggedex
- the exception to be logged
-
info
Logs the specified message on info level.- Parameters:
msg
- the message to be logged
-
isDebugEnabled
Returns a flag whether logging on debug level is enabled.- Returns:
- true if debug logging is enabled, false otherwise
-
isInfoEnabled
Returns a flag whether logging on info level is enabled.- Returns:
- true if debug logging is enabled, false otherwise
-
warn
Logs the specified message on warn level.- Parameters:
msg
- the message to be logged
-
warn
Logs the specified exception on warn level.- Parameters:
msg
- the message to be loggedex
- the exception to be logged
-