Ceylan::Log::LogTransportListenerRaw Class Reference

This class gathers the two endpoints of Log propagation: the LogTransport (the beginning) and the LogListener (the end). More...

#include <CeylanLogTransportListenerRaw.h>

Inheritance diagram for Ceylan::Log::LogTransportListenerRaw:

Inheritance graph
[legend]
Collaboration diagram for Ceylan::Log::LogTransportListenerRaw:

Collaboration graph
[legend]

List of all members.

Public Types

enum  TextOutputFormat { rawText, html }
 Defines what text output formats for TextDisplayable instances are available. More...

Public Member Functions

 LogTransportListenerRaw (LogAggregator &aggregator)
 Links this new LogListener to the specified log aggregator so that incoming log messages are sent to it.
virtual ~LogTransportListenerRaw () throw ()
 Basic virtual destructor.
virtual void propagate (LogMessage &message)
 Propagates message to the relevant aggregator.
virtual const std::string toString (Ceylan::VerbosityLevels level=Ceylan::high) const
 Returns a user-friendly description of the state of this object.

Static Public Member Functions

static const std::string ToString (std::list< TextDisplayable * > displayables, Ceylan::VerbosityLevels level=Ceylan::high)
 Returns a user-friendly description of this list of pointers to text displayable instances.
static TextOutputFormat GetOutputFormat ()
 Returns the current overall text format to be used by TextDisplayable instances.
static void SetOutputFormat (TextOutputFormat newOutputFormat)
 Sets the current overall text format to be used by TextDisplayable instances.

Protected Member Functions

void sendToAggregator (LogMessage &message) const
 Sends the received message to the internal aggregator.

Protected Attributes

LogAggregator_aggregator
 The aggregator this listener will send the incoming log messages to.

Static Protected Attributes

static TextOutputFormat _OutputFormat = rawText
 The text format to be used currently by TextDisplayable instances.

Private Member Functions

 LogTransportListenerRaw (const LogTransportListenerRaw &source)
 Copy constructor made private to ensure that it will be never called.
LogTransportListenerRawoperator= (const LogTransportListenerRaw &source)
 Assignment operator made private to ensure that it will be never called.


Detailed Description

This class gathers the two endpoints of Log propagation: the LogTransport (the beginning) and the LogListener (the end).

This particular implementation of the log system corresponds to the special case where log sources and their target (the aggregator) are both local, i.e. hosted by the same process. Obviously, their is no need to do anything for log messages to be propagated, so the only thing the instances of this class do is comply with the framework and simply takes a log message reference from a log source and gives it to the aggregator: this is the most basic communication bus.

Definition at line 65 of file CeylanLogTransportListenerRaw.h.


Member Enumeration Documentation

Defines what text output formats for TextDisplayable instances are available.

Enumerator:
rawText 
html 

Definition at line 124 of file CeylanTextDisplayable.h.


Constructor & Destructor Documentation

LogTransportListenerRaw::LogTransportListenerRaw ( LogAggregator aggregator  )  [explicit]

Links this new LogListener to the specified log aggregator so that incoming log messages are sent to it.

Definition at line 41 of file CeylanLogTransportListenerRaw.cc.

LogTransportListenerRaw::~LogTransportListenerRaw (  )  throw () [virtual]

Basic virtual destructor.

Definition at line 51 of file CeylanLogTransportListenerRaw.cc.

Ceylan::Log::LogTransportListenerRaw::LogTransportListenerRaw ( const LogTransportListenerRaw source  )  [private]

Copy constructor made private to ensure that it will be never called.

The compiler should complain whenever this undefined constructor is called, implicitly or not.


Member Function Documentation

TextDisplayable::TextOutputFormat TextDisplayable::GetOutputFormat (  )  [static, inherited]

LogTransportListenerRaw& Ceylan::Log::LogTransportListenerRaw::operator= ( const LogTransportListenerRaw source  )  [private]

Assignment operator made private to ensure that it will be never called.

The compiler should complain whenever this undefined operator is called, implicitly or not.

void LogTransportListenerRaw::propagate ( LogMessage message  )  [virtual]

Propagates message to the relevant aggregator.

Parameters:
message the message which is to be propagated
Note:
Here lies the trivial bridge between the transport side to the listener's one.
Exceptions:
LogException if the operation fails.

Implements Ceylan::Log::LogTransport.

Definition at line 58 of file CeylanLogTransportListenerRaw.cc.

References Ceylan::Log::LogListener::sendToAggregator().

void LogListener::sendToAggregator ( LogMessage message  )  const [protected, inherited]

Sends the received message to the internal aggregator.

Exceptions:
LogException if the operation fails.

Definition at line 78 of file CeylanLogListener.cc.

References Ceylan::Log::LogListener::_aggregator, and Ceylan::Log::LogAggregator::store().

Referenced by propagate().

void TextDisplayable::SetOutputFormat ( TextOutputFormat  newOutputFormat  )  [static, inherited]

Sets the current overall text format to be used by TextDisplayable instances.

Parameters:
newOutputFormat the new output format.

Definition at line 72 of file CeylanTextDisplayable.cc.

References Ceylan::TextDisplayable::_OutputFormat.

Referenced by Ceylan::Log::LogHolder::LogHolder().

const std::string TextDisplayable::ToString ( std::list< TextDisplayable * >  displayables,
Ceylan::VerbosityLevels  level = Ceylan::high 
) [static, inherited]

Returns a user-friendly description of this list of pointers to text displayable instances.

Parameters:
displayables a list of pointers to TextDisplayable instances/
level the requested verbosity level.
Note:
Text output format is determined from overall settings.
See also:
toString, Ceylan::VerbosityLevels

Definition at line 45 of file CeylanTextDisplayable.cc.

References Ceylan::formatStringList().

const string LogTransportListenerRaw::toString ( Ceylan::VerbosityLevels  level = Ceylan::high  )  const [virtual]

Returns a user-friendly description of the state of this object.

Parameters:
level the requested verbosity level.
Note:
Text output format is determined from overall settings.
See also:
TextDisplayable

Reimplemented from Ceylan::Log::LogListener.

Definition at line 68 of file CeylanLogTransportListenerRaw.cc.


Member Data Documentation

The aggregator this listener will send the incoming log messages to.

Definition at line 122 of file CeylanLogListener.h.

Referenced by Ceylan::Log::LogListener::sendToAggregator(), and Ceylan::Log::LogListener::toString().

TextDisplayable::TextOutputFormat TextDisplayable::_OutputFormat = rawText [static, protected, inherited]

The text format to be used currently by TextDisplayable instances.

Note:
Defaults to raw text.

Definition at line 158 of file CeylanTextDisplayable.h.

Referenced by Ceylan::TextDisplayable::GetOutputFormat(), and Ceylan::TextDisplayable::SetOutputFormat().


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

Generated on Thu Jun 4 20:40:30 2009 for Ceylan by  doxygen 1.5.8