10#ifndef _LOG4CPP_CATEGORY_HH
11#define _LOG4CPP_CATEGORY_HH
195 virtual Appender* getAppender()
const;
203 virtual Appender* getAppender(
const std::string& name)
const;
215 virtual void removeAllAppenders();
221 virtual void removeAppender(
Appender* appender);
256 virtual void setAdditivity(
bool additivity);
606 virtual void _logUnconditionally(
Priority::Value priority,
const char* format,
622 const std::string _name;
635 typedef std::map<Appender*, bool> OwnsAppenderMap;
653 OwnsAppenderMap _ownsAppender;
659 volatile bool _isAdditive;
#define LOG4CPP_EXPORT
Definition Export.hh:26
#define LOG4CPP_NOTHROW
Definition Portability.hh:82
Implement this interface for your own strategies for printing log statements.
Definition Appender.hh:34
This class enables streaming simple types and objects to a category.
Definition CategoryStream.hh:39
This is the central class in the log4j package.
Definition Category.hh:32
bool isInfoEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority INFO.
Definition Category.hh:351
friend class HierarchyMaintainer
Definition Category.hh:33
virtual const std::string & getName() const LOG4CPP_NOTHROW
Return the category name.
Definition Category.cpp:63
virtual bool isPriorityEnabled(Priority::Value priority) const LOG4CPP_NOTHROW
Returns true if the chained priority of the Category is equal to or higher than given priority.
Definition Category.cpp:254
bool isEmergEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority EMERG.
Definition Category.hh:531
static Category & getRoot()
Return the root of the Category hierarchy.
Definition Category.cpp:23
CategoryStream critStream()
Return a CategoryStream with priority CRIT.
Definition Category.hh:479
bool isFatalEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority FATAL.
Definition Category.hh:567
static Category & getInstance(const std::string &name)
Instantiate a Category with name name.
Definition Category.cpp:35
virtual Priority::Value getPriority() const LOG4CPP_NOTHROW
Returns the assigned Priority, if any, for this Category.
Definition Category.cpp:67
virtual Appender * getAppender() const
Returns the first Appender for this Category, or NULL if no Appender has been set.
Definition Category.cpp:120
virtual void setPriority(Priority::Value priority)
Set the priority of this Category.
Definition Category.cpp:71
bool isAlertEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority ALERT.
Definition Category.hh:501
bool isDebugEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority DEBUG.
Definition Category.hh:321
CategoryStream noticeStream()
Return a CategoryStream with priority NOTICE.
Definition Category.hh:389
CategoryStream emergStream()
Return a CategoryStream with priority EMERG.
Definition Category.hh:539
CategoryStream infoStream()
Return a CategoryStream with priority INFO.
Definition Category.hh:359
bool isCritEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority CRIT.
Definition Category.hh:471
CategoryStream alertStream() LOG4CPP_NOTHROW
Return a CategoryStream with priority ALERT.
Definition Category.hh:509
Category(const std::string &name, Category *parent, Priority::Value priority=Priority::NOTSET)
Constructor.
Definition Category.cpp:56
bool isErrorEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority ERROR.
Definition Category.hh:441
static void shutdown()
This method will remove all Appenders from Categories.XXX.
Definition Category.cpp:47
virtual Priority::Value getChainedPriority() const LOG4CPP_NOTHROW
Starting from this Category, search the category hierarchy for a set priority and return it.
Definition Category.cpp:82
CategoryStream fatalStream()
Return a CategoryStream with priority FATAL.
Definition Category.hh:577
bool isWarnEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority WARN.
Definition Category.hh:411
static Priority::Value getRootPriority() LOG4CPP_NOTHROW
Get the priority of the root Category.
Definition Category.cpp:31
virtual void removeAllAppenders()
Removes all appenders for this Category.
Definition Category.cpp:148
static std::vector< Category * > * getCurrentCategories()
Returns all the currently defined categories as a vector of Category pointers.
Definition Category.cpp:43
CategoryStream warnStream()
Return a CategoryStream with priority WARN.
Definition Category.hh:419
virtual bool ownsAppender() const LOG4CPP_NOTHROW
Returns true if the Category owns the first Appender in its Appender set.
Definition Category.hh:229
virtual CategoryStream getStream(Priority::Value priority)
Return a CategoryStream with given Priority.
Definition Category.cpp:404
static Category * exists(const std::string &name)
If the named category exists (in the default hierarchy) then it returns a reference to the category,...
Definition Category.cpp:39
void setAppender(Appender &appender)
Adds an Appender for this Category.
Definition Category.hh:185
bool isNoticeEnabled() const LOG4CPP_NOTHROW
Return true if the Category will log messages with priority NOTICE.
Definition Category.hh:381
static void setRootPriority(Priority::Value priority)
Set the priority of the root Category.
Definition Category.cpp:27
static void shutdownForced()
This method will remove all Appenders from Categories.XXX and delete all appenders.
Definition Category.cpp:51
CategoryStream errorStream()
Return a CategoryStream with priority ERROR.
Definition Category.hh:449
CategoryStream debugStream()
Return a CategoryStream with priority DEBUG.
Definition Category.hh:329
void setAppender(Appender *appender)
Adds an Appender to this Category.
Definition Category.hh:171
virtual void addAppender(Appender *appender)
Adds an Appender to this Category.
Definition Category.cpp:93
The Priority class provides importance levels with which one can categorize log messages.
Definition Priority.hh:61
int Value
The type of Priority Values.
Definition Priority.hh:85
@ FATAL
Definition Priority.hh:71
@ CRIT
Definition Priority.hh:73
@ DEBUG
Definition Priority.hh:78
@ EMERG
Definition Priority.hh:70
@ INFO
Definition Priority.hh:77
@ ALERT
Definition Priority.hh:72
@ WARN
Definition Priority.hh:75
@ ERROR
Definition Priority.hh:74
@ NOTICE
Definition Priority.hh:76
@ NOTSET
Definition Priority.hh:79
Definition PThreads.hh:28
The top level namespace for all 'Log for C++' types and classes.
Definition AbortAppender.hh:16
ostream & operator<<(ostream &os, const width &w)
Definition Manipulator.cpp:10
std::set< Appender * > AppenderSet
Definition Appender.hh:177
Definition Portability.hh:61
The internal representation of logging events.
Definition LoggingEvent.hh:32