Etwas zum Logger.
Ich würde daraus 3 Klassen machen:
* eine abstracte Basisklasse mit virtuellen Methoden
* eine FileLogger Klasse
* eine NullLogger KLasse
Delphi-Quellcode:
TWUSLogger = class
protected
fLogOpen: boolean;
procedure WriteMsg(const aMessage: String); virtual;abstract;
public
constructor Create;
destructor Destroy; override;
procedure LogOpen; virtual;
procedure LogClose; virtual;
procedure LogWrite(const aMessage: String);
end;
TWUSFileLogger = class
strict private
fLogfile: String;
fLogStream : TStream;
protected
procedure WriteMsg(const aMessage: String); override;
public
procedure LogOpen; override;
procedure LogClose; override;
property LogFile: String read fLogfile write SetLogfile;
end;
TWUSNullLogger = class
protected
procedure WriteMsg(const aMessage: String); override; // leere Methode
end;
Damit lässt sich das Logging System später leicht ausbauen.