class Formatter

Library: Foundation
Package: Logging
Header: Poco/Formatter.h


The base class for all Formatter classes.

A formatter basically takes a Message object and formats it into a string. How the formatting is exactly done is up to the implementation of Formatter. For example, a very simple implementation might simply take the message's Text (see Message::getText()). A useful implementation should at least take the Message's Time, Priority and Text fields and put them into a string.

The Formatter class supports the Configurable interface, so the behaviour of certain formatters is configurable.

Trivial implementations of of getProperty() and setProperty() are provided.

Subclasses must at least provide a format() method.


Direct Base Classes: Configurable, RefCountedObject

All Base Classes: Configurable, RefCountedObject

Known Derived Classes: PatternFormatter

Member Summary

Member Functions: format, getProperty, setProperty

Inherited Functions: duplicate, getProperty, referenceCount, release, setProperty




Creates the formatter.


~Formatter virtual

virtual ~Formatter();

Destroys the formatter.

Member Functions

format virtual

virtual void format(
    const Message & msg,
    std::string & text
) = 0;

Formats the message and places the result in text. Subclasses must override this method.

getProperty virtual

std::string getProperty(
    const std::string & name
) const;

Throws a PropertyNotSupportedException.

See also: Poco::Configurable::getProperty()

setProperty virtual

void setProperty(
    const std::string & name,
    const std::string & value

Throws a PropertyNotSupportedException.

See also: Poco::Configurable::setProperty()