Inherits log4cxx::spi::Configurator, and log4cxx::helpers::ObjectImpl.
Public Member Functions | |
| DOMConfigurator () | |
| DOMConfigurator (log4cxx::helpers::Pool &p) | |
| void | addRef () const |
| void | releaseRef () const |
| void | doConfigure (const File &filename, spi::LoggerRepositoryPtr &repository) |
Interpret the XML file pointed by filename and set up log4cxx accordingly. | |
Static Public Member Functions | |
| static void | configure (const std::string &filename) |
| A static version of doConfigure. | |
| static void | configure (const std::wstring &filename) |
| static void | configure (const std::basic_string< UniChar > &filename) |
| static void | configure (const CFStringRef &filename) |
| static void | configureAndWatch (const std::string &configFilename) |
| Like configureAndWatch(const std::string& configFilename, long delay) except that the default delay as defined by log4cxx::helpers::FileWatchdog::DEFAULT_DELAY is used. | |
| static void | configureAndWatch (const std::wstring &configFilename) |
| static void | configureAndWatch (const std::basic_string< UniChar > &configFilename) |
| static void | configureAndWatch (const CFStringRef &configFilename) |
| static void | configureAndWatch (const std::string &configFilename, long delay) |
Read the configuration file configFilename if it exists. | |
| static void | configureAndWatch (const std::wstring &configFilename, long delay) |
| static void | configureAndWatch (const std::basic_string< UniChar > &configFilename, long delay) |
| static void | configureAndWatch (const CFStringRef &configFilename, long delay) |
Protected Types | |
| typedef std::map< LogString, AppenderPtr > | AppenderMap |
Protected Member Functions | |
| AppenderPtr | findAppenderByName (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *elem, apr_xml_doc *doc, const LogString &appenderName, AppenderMap &appenders) |
| Used internally to parse appenders by IDREF name. | |
| AppenderPtr | findAppenderByReference (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *appenderRef, apr_xml_doc *doc, AppenderMap &appenders) |
| Used internally to parse appenders by IDREF element. | |
| AppenderPtr | parseAppender (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *appenderElement, apr_xml_doc *doc, AppenderMap &appenders) |
| Used internally to parse an appender element. | |
| void | parseErrorHandler (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *element, AppenderPtr &appender, apr_xml_doc *doc, AppenderMap &appenders) |
| Used internally to parse an ErrorHandler element. | |
| void | parseFilters (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *element, std::vector< log4cxx::spi::FilterPtr > &filters) |
| Used internally to parse a filter element. | |
| void | parseLogger (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *loggerElement, apr_xml_doc *doc, AppenderMap &appenders) |
| Used internally to parse a logger element. | |
| void | parseLoggerFactory (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *factoryElement) |
| Used internally to parse the logger factory element. | |
| log4cxx::helpers::ObjectPtr | parseTriggeringPolicy (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *factoryElement) |
| Used internally to parse the logger factory element. | |
| log4cxx::rolling::RollingPolicyPtr | parseRollingPolicy (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *factoryElement) |
| Used internally to parse the logger factory element. | |
| void | parseRoot (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *rootElement, apr_xml_doc *doc, AppenderMap &appenders) |
| Used internally to parse the root logger element. | |
| void | parseChildrenOfLoggerElement (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *catElement, LoggerPtr logger, bool isRoot, apr_xml_doc *doc, AppenderMap &appenders) |
| Used internally to parse the children of a logger element. | |
| LayoutPtr | parseLayout (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *layout_element) |
| Used internally to parse a layout element. | |
| void | parseLevel (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *element, LoggerPtr logger, bool isRoot) |
| Used internally to parse a level element. | |
| void | setParameter (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *elem, log4cxx::config::PropertySetter &propSetter) |
| void | parse (log4cxx::helpers::Pool &p, log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *element, apr_xml_doc *doc, AppenderMap &appenders) |
| Used internally to configure the log4cxx framework from an in-memory representation of an XML document. | |
| LogString | subst (const LogString &value) |
Static Protected Member Functions | |
| static LogString | getAttribute (log4cxx::helpers::CharsetDecoderPtr &utf8Decoder, apr_xml_elem *, const std::string &attrName) |
Protected Attributes | |
| helpers::Properties | props |
| spi::LoggerRepositoryPtr | repository |
| spi::LoggerFactoryPtr | loggerFactory |
Sometimes it is useful to see how log4cxx is reading configuration files. You can enable log4cxx internal logging by setting the debug attribute in the log4cxx element. As in
<log4j:configuration debug="true" xmlns:log4j="http://jakarta.apache.org/log4j/">
...
</log4j:configuration>
There are sample XML files included in the package.
typedef std::map<LogString, AppenderPtr> AppenderMap [protected] |
| DOMConfigurator | ( | ) |
| void addRef | ( | ) | const [virtual] |
Reimplemented from ObjectImpl.
| static void configure | ( | const CFStringRef & | filename | ) | [static] |
| static void configure | ( | const std::basic_string< UniChar > & | filename | ) | [static] |
| static void configure | ( | const std::wstring & | filename | ) | [static] |
| static void configure | ( | const std::string & | filename | ) | [static] |
A static version of doConfigure.
| static void configureAndWatch | ( | const CFStringRef & | configFilename, | |
| long | delay | |||
| ) | [static] |
| static void configureAndWatch | ( | const std::basic_string< UniChar > & | configFilename, | |
| long | delay | |||
| ) | [static] |
| static void configureAndWatch | ( | const std::wstring & | configFilename, | |
| long | delay | |||
| ) | [static] |
| static void configureAndWatch | ( | const std::string & | configFilename, | |
| long | delay | |||
| ) | [static] |
Read the configuration file configFilename if it exists.
Moreover, a thread will be created that will periodically check if configFilename has been created or modified. The period is determined by the delay argument. If a change or file creation is detected, then configFilename is read to configure log4cxx.
| configFilename | A log4j configuration file in XML format. | |
| delay | The delay in milliseconds to wait between each check. |
| static void configureAndWatch | ( | const CFStringRef & | configFilename | ) | [static] |
| static void configureAndWatch | ( | const std::basic_string< UniChar > & | configFilename | ) | [static] |
| static void configureAndWatch | ( | const std::wstring & | configFilename | ) | [static] |
| static void configureAndWatch | ( | const std::string & | configFilename | ) | [static] |
Like configureAndWatch(const std::string& configFilename, long delay) except that the default delay as defined by log4cxx::helpers::FileWatchdog::DEFAULT_DELAY is used.
| configFilename | A log4j configuration file in XML format. |
| void doConfigure | ( | const File & | filename, | |
| spi::LoggerRepositoryPtr & | repository | |||
| ) | [virtual] |
Interpret the XML file pointed by filename and set up log4cxx accordingly.
The configuration is done relative to the hierarchy parameter.
| filename | The file to parse. | |
| repository | The hierarchy to operation upon. |
Implements Configurator.
| AppenderPtr findAppenderByName | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | elem, | |||
| apr_xml_doc * | doc, | |||
| const LogString & | appenderName, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to parse appenders by IDREF name.
| AppenderPtr findAppenderByReference | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | appenderRef, | |||
| apr_xml_doc * | doc, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to parse appenders by IDREF element.
| static LogString getAttribute | ( | log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |
| apr_xml_elem * | , | |||
| const std::string & | attrName | |||
| ) | [static, protected] |
| void parse | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | element, | |||
| apr_xml_doc * | doc, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to configure the log4cxx framework from an in-memory representation of an XML document.
| AppenderPtr parseAppender | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | appenderElement, | |||
| apr_xml_doc * | doc, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to parse an appender element.
| void parseChildrenOfLoggerElement | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | catElement, | |||
| LoggerPtr | logger, | |||
| bool | isRoot, | |||
| apr_xml_doc * | doc, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to parse the children of a logger element.
| void parseErrorHandler | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | element, | |||
| AppenderPtr & | appender, | |||
| apr_xml_doc * | doc, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to parse an ErrorHandler element.
| void parseFilters | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | element, | |||
| std::vector< log4cxx::spi::FilterPtr > & | filters | |||
| ) | [protected] |
Used internally to parse a filter element.
| LayoutPtr parseLayout | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | layout_element | |||
| ) | [protected] |
Used internally to parse a layout element.
| void parseLevel | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | element, | |||
| LoggerPtr | logger, | |||
| bool | isRoot | |||
| ) | [protected] |
Used internally to parse a level element.
| void parseLogger | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | loggerElement, | |||
| apr_xml_doc * | doc, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to parse a logger element.
| void parseLoggerFactory | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | factoryElement | |||
| ) | [protected] |
Used internally to parse the logger factory element.
| log4cxx::rolling::RollingPolicyPtr parseRollingPolicy | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | factoryElement | |||
| ) | [protected] |
Used internally to parse the logger factory element.
| void parseRoot | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | rootElement, | |||
| apr_xml_doc * | doc, | |||
| AppenderMap & | appenders | |||
| ) | [protected] |
Used internally to parse the root logger element.
| log4cxx::helpers::ObjectPtr parseTriggeringPolicy | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | factoryElement | |||
| ) | [protected] |
Used internally to parse the logger factory element.
| void releaseRef | ( | ) | const [virtual] |
Reimplemented from ObjectImpl.
| void setParameter | ( | log4cxx::helpers::Pool & | p, | |
| log4cxx::helpers::CharsetDecoderPtr & | utf8Decoder, | |||
| apr_xml_elem * | elem, | |||
| log4cxx::config::PropertySetter & | propSetter | |||
| ) | [protected] |
spi::LoggerFactoryPtr loggerFactory [protected] |
helpers::Properties props [protected] |
spi::LoggerRepositoryPtr repository [protected] |