52 lines
1.0 KiB
Plaintext
52 lines
1.0 KiB
Plaintext
|
unit prothandler;
|
||
|
interface
|
||
|
{$IFDEF FPC}
|
||
|
{$mode delphi}{$H+}
|
||
|
{$ENDIF}
|
||
|
uses
|
||
|
{$IFDEF UNIX}
|
||
|
{$define usezlib}
|
||
|
{$define useopenssl}
|
||
|
{$ENDIF}
|
||
|
{$IFDEF POSIX}
|
||
|
{$define usezlib}
|
||
|
{$define useopenssl}
|
||
|
{$ENDIF}
|
||
|
{$IFDEF WIN32}
|
||
|
{$define usezlib}
|
||
|
{$define useopenssl}
|
||
|
{$ENDIF}
|
||
|
{$IFDEF WIN64}
|
||
|
{$define usezlib}
|
||
|
{$define useopenssl}
|
||
|
{$ENDIF}
|
||
|
Classes, SysUtils, IdURI;
|
||
|
type
|
||
|
TProtHandler = class(TObject)
|
||
|
protected
|
||
|
FLogData : TStrings;
|
||
|
FVerbose : Boolean;
|
||
|
public
|
||
|
constructor Create;
|
||
|
destructor Destroy; override;
|
||
|
class function CanHandleURL(AURL : TIdURI) : Boolean; virtual; abstract;
|
||
|
procedure GetFile(AURL : TIdURI); virtual; abstract;
|
||
|
property LogData : TStrings read FLogData;
|
||
|
property Verbose : Boolean read FVerbose write FVerbose;
|
||
|
end;
|
||
|
|
||
|
implementation
|
||
|
|
||
|
constructor TProtHandler.Create;
|
||
|
begin
|
||
|
inherited Create;
|
||
|
FLogData := TStringList.Create;
|
||
|
end;
|
||
|
|
||
|
destructor TProtHandler.Destroy;
|
||
|
begin
|
||
|
FreeAndNil(FLogData);
|
||
|
end;
|
||
|
|
||
|
end.
|