| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- {
- $Project$
- $Workfile$
- $Revision$
- $DateUTC$
- $Id$
- This file is part of the Indy (Internet Direct) project, and is offered
- under the dual-licensing agreement described on the Indy website.
- (http://www.indyproject.org/)
- Copyright:
- (c) 1993-2005, Chad Z. Hower and the Indy Pit Crew. All rights reserved.
- }
- {
- $Log$
- }
- {
- Rev 1.5 7/23/04 6:53:28 PM RLebeau
- TFileStream access right tweak for Init()
- Rev 1.4 07/07/2004 17:41:38 ANeillans
- Added IdGlobal to uses, was not compiling cleanly due to missing function
- WriteStringToStream.
- Rev 1.3 6/29/04 1:20:14 PM RLebeau
- Updated DoLogWriteString() to call WriteStringToStream() instead
- Rev 1.2 10/19/2003 5:57:22 PM DSiders
- Added localization comments.
- Rev 1.1 2003.10.17 8:20:42 PM czhower
- Removed const
- Rev 1.0 3/22/2003 10:59:22 PM BGooijen
- Initial check in.
- ServerIntercept to ease debugging, data/status are logged to a file
- }
- unit IdServerInterceptLogFile;
- interface
- {$i IdCompilerDefines.inc}
- uses
- IdServerInterceptLogBase,
- IdGlobal,
- Classes;
- type
- TIdServerInterceptLogFile = class(TIdServerInterceptLogBase)
- protected
- FFileStream: TFileStream;
- FFilename:string;
- public
- procedure Init; override;
- destructor Destroy; override;
- procedure DoLogWriteString(const AText: string); override;
- published
- property Filename: string read FFilename write FFilename;
- end;
- implementation
- uses
- IdBaseComponent, SysUtils;
- { TIdServerInterceptLogFile }
- destructor TIdServerInterceptLogFile.Destroy;
- begin
- FFileStream.Free;
- inherited Destroy;
- end;
- procedure TIdServerInterceptLogFile.Init;
- begin
- inherited Init;
- if not IsDesignTime then begin
- if FFilename = '' then begin
- FFilename := ChangeFileExt(ParamStr(0), '.log'); {do not localize} //BGO: TODO: Do we keep this, or maybe raise an exception?
- end;
- FFileStream := TIdAppendFileStream.Create(Filename);
- end;
- end;
- procedure TIdServerInterceptLogFile.DoLogWriteString(const AText: string);
- begin
- WriteStringToStream(FFileStream, AText, IndyTextEncoding_8Bit);
- end;
- end.
|