00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
#ifndef _LOG4CPP_FIXEDCONTEXTCATEGORY_HH
00011
#define _LOG4CPP_FIXEDCONTEXTCATEGORY_HH
00012
00013
#include <log4cpp/Portability.hh>
00014
#include <log4cpp/Category.hh>
00015
00016
namespace log4cpp {
00017
00029 class LOG4CPP_EXPORT FixedContextCategory :
public Category {
00030
00031
public:
00032
00040 FixedContextCategory(
const std::string& name,
00041
const std::string& context =
"");
00042
00043
00047
virtual ~FixedContextCategory();
00048
00053
virtual void setContext(
const std::string& context);
00054
00059
virtual std::string getContext()
const;
00060
00065
virtual Priority::Value getPriority()
const throw();
00066
00075
virtual Priority::Value getChainedPriority()
const throw();
00076
00080
virtual void addAppender(
Appender* appender)
throw();
00081
00085
virtual void addAppender(
Appender& appender);
00086
00092
virtual Appender* getAppender()
const;
00093
00100
virtual Appender* getAppender(
const std::string& name)
const;
00101
00107
virtual AppenderSet getAllAppenders()
const;
00108
00113
virtual void removeAllAppenders();
00114
00119
virtual bool ownsAppender()
const throw();
00120
00125
virtual bool ownsAppender(
Appender* appender)
00126
const throw();
00127
00139
virtual void callAppenders(
const LoggingEvent& event)
throw();
00140
00144
virtual void setAdditivity(
bool additivity);
00145
00149
virtual bool getAdditivity()
const throw();
00150
00151
protected:
00152
00158
virtual void _logUnconditionally2(Priority::Value priority,
00159
const std::string& message)
throw();
00160
00161
private:
00162
00166
Category& _delegate;
00167
00169 std::string _context;
00170
00171 };
00172
00173 }
00174
#endif // _LOG4CPP_FIXEDCONTEXTCATEGORY_HH