/* * LoggingEvent.hh * * Copyright 2000, LifeLine Networks BV (www.lifeline.nl). All rights reserved. * Copyright 2000, Bastiaan Bakker. All rights reserved. * * See the COPYING file for the terms of usage and distribution. */ #ifndef _LOG4SHIB_LOGGINGEVENT_HH #define _LOG4SHIB_LOGGINGEVENT_HH #include #include #include #include /** * The top level namespace for all 'Log for C++' types and classes. **/ namespace log4shib { /** * The internal representation of logging events. When a affirmative * logging decision is made a LoggingEvent instance is * created. This instance is passed around the different log4shib * components. * *

This class is of concern to those wishing to extend log4shib. **/ struct LOG4SHIB_EXPORT LoggingEvent { public: /** * Instantiate a LoggingEvent from the supplied parameters. * *

Except timeStamp all the other fields of * LoggingEvent are filled when actually needed. *

* @param category The category of this event. * @param message The message of this event. * @param ndc The nested diagnostic context of this event. * @param priority The priority of this event. **/ LoggingEvent(const std::string& category, const std::string& message, const std::string& ndc, Priority::Value priority); /** The category name. */ const std::string categoryName; /** The application supplied message of logging event. */ const std::string message; /** The nested diagnostic context (NDC) of logging event. */ const std::string ndc; /** Priority of logging event. */ Priority::Value priority; /** The name of thread in which this logging event was generated, e.g. the PID. */ const std::string threadName; /** The number of seconds elapsed since the epoch (1/1/1970 00:00:00 UTC) until logging event was created. */ TimeStamp timeStamp; }; } #endif // _LOG4SHIB_LOGGINGEVENT_HH