Poco

class Channel

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

Description

The base class for all Channel classes.

Supports reference counting based garbage collection and provides trivial implementations of getProperty() and setProperty().

Inheritance

Direct Base Classes: Configurable, RefCountedObject

All Base Classes: Configurable, RefCountedObject

Known Derived Classes: Poco::Data::SQLChannel, AsyncChannel, ConsoleChannel, ColorConsoleChannel, EventLogChannel, EventChannel, FileChannel, FormattingChannel, Logger, NullChannel, SimpleFileChannel, SplitterChannel, StreamChannel, SyslogChannel, WindowsColorConsoleChannel, WindowsConsoleChannel, Poco::Net::RemoteSyslogChannel, Poco::Net::RemoteSyslogListener, Poco::Net::SMTPChannel

Member Summary

Member Functions: close, getProperty, log, open, setProperty

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

Types Aliases

Ptr

using Ptr = AutoPtr < Channel >;

Constructors

Channel

Channel();

Creates the channel and initializes the reference count to one.

Destructor

~Channel protected virtual

virtual ~Channel();

Member Functions

close virtual

virtual void close();

Does whatever is necessary to close the channel. The default implementation does nothing.

getProperty virtual

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

log virtual

virtual void log(
    const Message & msg
) = 0;

Logs the given message to the channel. Must be overridden by subclasses.

If the channel has not been opened yet, the log() method will open it.

open virtual

virtual void open();

Does whatever is necessary to open the channel. The default implementation does nothing.

setProperty virtual

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