18 #ifndef _LOG4CXX_PROPERTY_CONFIGURATOR_H 19 #define _LOG4CXX_PROPERTY_CONFIGURATOR_H 22 #pragma warning (push) 23 #pragma warning ( disable: 4231 4251 4275 4786 ) 27 #include <log4cxx/helpers/objectptr.h> 28 #include <log4cxx/helpers/objectimpl.h> 29 #include <log4cxx/logstring.h> 30 #include <log4cxx/spi/configurator.h> 33 #include <log4cxx/file.h> 38 typedef helpers::ObjectPtrT<Logger> LoggerPtr;
41 typedef helpers::ObjectPtrT<Appender> AppenderPtr;
54 class PropertyWatchdog;
111 BEGIN_LOG4CXX_CAST_MAP()
112 LOG4CXX_CAST_ENTRY(spi::Configurator)
113 END_LOG4CXX_CAST_MAP()
116 virtual ~PropertyConfigurator();
118 void releaseRef() const;
296 void doConfigure(const
File& configFileName,
297 spi::LoggerRepositoryPtr& hierarchy);
302 static
void configure(const
File& configFilename);
311 static
void configureAndWatch(const
File& configFilename);
324 static
void configureAndWatch(const
File& configFilename,
332 static
void configure(helpers::Properties& properties);
339 void doConfigure(helpers::Properties& properties,
340 spi::LoggerRepositoryPtr& hierarchy);
355 void configureLoggerFactory(helpers::Properties& props);
357 void configureRootLogger(helpers::Properties& props,
358 spi::LoggerRepositoryPtr& hierarchy);
363 void parseCatsAndRenderers(helpers::Properties& props,
364 spi::LoggerRepositoryPtr& hierarchy);
369 void parseAdditivityForLogger(helpers::Properties& props,
370 LoggerPtr& cat, const LogString& loggerName);
376 helpers::Properties& props, LoggerPtr& logger,
377 const LogString& optionKey, const LogString& loggerName,
378 const LogString& value);
380 AppenderPtr parseAppender(
381 helpers::Properties& props, const LogString& appenderName);
383 void registryPut(const AppenderPtr& appender);
384 AppenderPtr registryGet(const LogString& name);
387 PropertyConfigurator(const PropertyConfigurator&);
388 PropertyConfigurator& operator=(const PropertyConfigurator&);
389 static PropertyWatchdog* pdog;
393 #if defined(_MSC_VER) 394 #pragma warning (pop) 398 #endif //_LOG4CXX_PROPERTY_CONFIGURATOR_H Allows the configuration of log4cxx from an external file.
Definition: propertyconfigurator.h:93
Implementation class for Object.
Definition: objectimpl.h:28
std::map< LogString, AppenderPtr > * registry
Used internally to keep track of configured appenders.
Definition: propertyconfigurator.h:102
helpers::ObjectPtrT< spi::LoggerFactory > loggerFactory
Used to create new instances of logger.
Definition: propertyconfigurator.h:107
Implemented by classes capable of configuring log4j using a URL.
Definition: configurator.h:32
An abstract representation of file and directory path names.
Definition: file.h:45
Definition: appender.h:33
smart pointer to a Object descendant
Definition: objectptr.h:54