BoilerPlate-LightweightLogging Service OMG Formal/03-11-03 |
Right now, the BP-LWL writes all Log messages to a single file. An index is maintained that tracks the span of Record Ids matched to the timestamp that the associated Log was opened. Each log entry is refered to as a Record. Each Record has a unique Id called the Record Id. The Record Id is an unsigned long. In addition to the Record Id each Record contains:
The BP-LWL build will produce one executable (the LWL service), the client library, and the IDL library. Client's will need to link with the client library and the IDL library. Clients will also need the IDL generated header files in the idl subdirectory and the client header files in the client/include subdirectory.
The client framework for LWL consist of only a few files. BPLog.h contains the LWL contract. It also has a static accessor that is used to get a reference to the implementation of the Log. We use the Abstract Factory pattern to hide the implementation details. The pattern gives us the ability to have multiple implementations of a Log that a client can switch. One implementation is a stub that can either write a local file or write to the C++ standard clog ostream. The other implementation will use the CORBA NameService to connect you to the CORBA LWL Service. You should use #ifdefs to switch between the two.
Copyright © BoilerPlate.org | Generated on Tue Nov 30 16:32:44 2004 for BoilerPlate CosLightweightLogging Service by 1.3.7 |