用简单的Tracer类来为应用写入跟踪
作者: 来源:不详 添加时间:2006-5-25 21:23:41=======类的代码=========
| {***********************} { } { CodeMachine } { } { 版权所有 (C) 2004 nil } { } { 2004-6-10 } { } {************************} { unit com.sunset.app.tracer; interface uses StrUtils,classes,SysUtils; type //========================== //跟踪信息的接口 //========================== //string形式的跟踪记录 //========================== |
[page]
TFileLog = class(TInterfacedObject, IOutput) TProcStr = procedure(const value:string) of Object; //========================== { TTracer } implementation { TTracer } constructor TTracer.Create; end; constructor TTracer.Create(aOutput: IOutput); |
[page]
destructor TTracer.Destroy; procedure TTracer.SetOutput(const Value: IOutput); procedure TTracer.Write(const aInfo: ITraceInfo); { TStringTI } constructor TStringTI.Create(data: string); function TStringTI.ToString: string; { TStringLog } constructor TFileLog.Create(const FileName: string); procedure TFileLog.Write(const aInfo: ITraceInfo); |
[page]
{ TDatabaseLog } constructor TDatabaseLog.Create(WriteProc: TProcStr); procedure TDatabaseLog.Write(const aInfo: ITraceInfo); end. ===========测试代码=========== unit test.com.sunset.app.tracer; interface uses type published implementation procedure TTest.Setup; end; |
[page]
procedure TTest.TearDown; end; procedure TTest.TestTracer; initialization end. |