{***********************} { } { CodeMachine } { } { 版权所有 (C) 2004 nil } { } { 2004-6-10 } { } {************************} { 通常将TTracer的实例存放于application级的Session中,在使用时, 创建一个ITraceInfo,调用TTracer.Write(ITraceInfo)即可, } unit com.sunset.app.tracer; interface uses StrUtils,classes,SysUtils; type //========================== // 接口声明 //========================== //跟踪信息的接口 ITraceInfo = interface function ToString: string; end; //输出目标的接口 IOutput = interface procedure Write(const aInfo: ITraceInfo); //写入跟踪信息 end; //========================== // 跟踪信息类 ,实现 ITraceInfo //========================== //string形式的跟踪记录 TStringTI = class(TInterfacedObject, ITraceInfo) private FData: string; public constructor Create(data: string); function ToString: string; end; //========================== // 跟踪信息输出类,实现 IOutput //========================== |