blocxx
BLOCXX_NAMESPACE::MultiAppender Class Reference

This implementation of LogAppender is used to send a Log message to multiple LogAppenders. More...

#include <MultiAppender.hpp>

Inheritance diagram for BLOCXX_NAMESPACE::MultiAppender:
BLOCXX_NAMESPACE::LogAppender BLOCXX_NAMESPACE::IntrusiveCountableBase

Public Member Functions

 MultiAppender (const LogAppenderRef &appender)
 
 MultiAppender (const Array< LogAppenderRef > &appenders)
 
virtual ~MultiAppender ()
 
void addLogAppender (const LogAppenderRef &appender)
 
- Public Member Functions inherited from BLOCXX_NAMESPACE::LogAppender
virtual ~LogAppender ()
 
void logMessage (const LogMessage &message) const
 Log a message using the specified component and category.
 
bool categoryIsEnabled (const String &category) const
 
bool componentAndCategoryAreEnabled (const String &component, const String &category) const
 
ELogLevel getLogLevel () const
 

Private Member Functions

virtual void doProcessLogMessage (const String &formattedMessage, const LogMessage &message) const
 

Private Attributes

Array< LogAppenderRefm_appenders
 

Additional Inherited Members

- Static Public Member Functions inherited from BLOCXX_NAMESPACE::LogAppender
static LogAppenderRef getCurrentLogAppender ()
 Get a copy of the per thread LogAppenderRef or if not set, the default one.
 
static LogAppenderRef getDefaultLogAppender ()
 Returns a copy of default LogAppenderRef.
 
static bool setDefaultLogAppender (const LogAppenderRef &ref)
 Set the default global LogAppenderRef.
 
static LogAppenderRef getThreadLogAppender ()
 Returns a copy of the thread LogAppenderRef.
 
static bool setThreadLogAppender (const LogAppenderRef &ref)
 Set a per thread LogAppenderRef that overrides the default one.
 
static LogAppenderRef createLogAppender (const String &name, const StringArray &components, const StringArray &categories, const String &messageFormat, const String &type, const LoggerConfigMap &configItems)
 Create a concrete log appender depending on the type string passed in.
 
- Static Public Attributes inherited from BLOCXX_NAMESPACE::LogAppender
static const GlobalStringArray ALL_COMPONENTS = { "*", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 Pass to createLogAppender to indicate all components.
 
static const GlobalStringArray ALL_CATEGORIES = { "*", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 Pass to createLogAppender to indicate all categories.
 
static const GlobalString STR_TTCC_MESSAGE_FORMAT = { "%r [%t] %-5p %c - %m", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 The Log4j TTCC message format - TTCC is acronym for Time Thread Category Component.
 
static const GlobalString TYPE_SYSLOG = { "syslog", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 String of the type of the syslog log appender.
 
static const GlobalString TYPE_STDERR = { "stderr", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 String of the type of the stderr log appender.
 
static const GlobalString TYPE_FILE = { "file", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 String of the type of the file log appender.
 
static const GlobalString TYPE_MPFILE = { "mpfile", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 String of the type of the multi-process file log appender.
 
static const GlobalString TYPE_NULL = { "null", 0, {0, PTHREAD_MUTEX_INITIALIZER} }
 String of the type of the null log appender.
 
- Protected Member Functions inherited from BLOCXX_NAMESPACE::LogAppender
 LogAppender (const StringArray &components=ALL_COMPONENTS, const StringArray &categories=ALL_CATEGORIES, const String &pattern=STR_TTCC_MESSAGE_FORMAT)
 
- Protected Member Functions inherited from BLOCXX_NAMESPACE::IntrusiveCountableBase
 IntrusiveCountableBase ()
 
 IntrusiveCountableBase (const IntrusiveCountableBase &)
 
IntrusiveCountableBaseoperator= (const IntrusiveCountableBase &)
 
virtual ~IntrusiveCountableBase ()
 

Detailed Description

This implementation of LogAppender is used to send a Log message to multiple LogAppenders.

Definition at line 52 of file MultiAppender.hpp.

Constructor & Destructor Documentation

◆ MultiAppender() [1/2]

BLOCXX_NAMESPACE::MultiAppender::MultiAppender ( const LogAppenderRef & appender)

Definition at line 50 of file MultiAppender.cpp.

◆ MultiAppender() [2/2]

BLOCXX_NAMESPACE::MultiAppender::MultiAppender ( const Array< LogAppenderRef > & appenders)

Definition at line 57 of file MultiAppender.cpp.

◆ ~MultiAppender()

BLOCXX_NAMESPACE::MultiAppender::~MultiAppender ( )
virtual

Definition at line 64 of file MultiAppender.cpp.

Member Function Documentation

◆ addLogAppender()

void BLOCXX_NAMESPACE::MultiAppender::addLogAppender ( const LogAppenderRef & appender)

Definition at line 70 of file MultiAppender.cpp.

References m_appenders.

◆ doProcessLogMessage()

void BLOCXX_NAMESPACE::MultiAppender::doProcessLogMessage ( const String & formattedMessage,
const LogMessage & message ) const
privatevirtual

Implements BLOCXX_NAMESPACE::LogAppender.

Definition at line 77 of file MultiAppender.cpp.

References i, and m_appenders.

Member Data Documentation

◆ m_appenders

Array<LogAppenderRef> BLOCXX_NAMESPACE::MultiAppender::m_appenders
private

Definition at line 66 of file MultiAppender.hpp.

Referenced by addLogAppender(), and doProcessLogMessage().


The documentation for this class was generated from the following files: