You've already forked lazarus-ccr
library protocol added ( Hosting services into dynamic library DLL/SO).
connexion string format is lib:FileName=<A File Name>;target=<the target service> example :lib:FileName=C:\Programmes\lazarus\wst\tests\library\obj\lib_server.dll;target=ICalculator todo : test on Linux, write Documentation in the Wiki. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@32 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
87
wst/trunk/library_base_intf.pas
Normal file
87
wst/trunk/library_base_intf.pas
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
{
|
||||||
|
This file is part of the Web Service Toolkit
|
||||||
|
Copyright (c) 2006 by Inoussa OUEDRAOGO
|
||||||
|
|
||||||
|
This file is provide under modified LGPL licence
|
||||||
|
( the files COPYING.modifiedLGPL and COPYING.LGPL).
|
||||||
|
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
}
|
||||||
|
unit library_base_intf;
|
||||||
|
|
||||||
|
{$mode objfpc}{$H+}
|
||||||
|
|
||||||
|
interface
|
||||||
|
uses base_service_intf;
|
||||||
|
|
||||||
|
const
|
||||||
|
RET_OK = 0;
|
||||||
|
RET_FALSE = 1;
|
||||||
|
WST_LIB_HANDLER = 'wstHandleRequest';
|
||||||
|
|
||||||
|
type
|
||||||
|
|
||||||
|
EwstCheckException = class(EServiceException)
|
||||||
|
private
|
||||||
|
FReturnCode: Integer;
|
||||||
|
public
|
||||||
|
property ReturnCode : Integer read FReturnCode write FReturnCode;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IwstStream = interface
|
||||||
|
['{95700F89-3E36-4678-AD84-347162E39288}']
|
||||||
|
function Read(
|
||||||
|
ABuffer : Pointer;
|
||||||
|
const ALenToRead : LongWord;
|
||||||
|
out AReadedLen : LongWord
|
||||||
|
):LongInt;
|
||||||
|
function Write(
|
||||||
|
ABuffer : Pointer;
|
||||||
|
const ALenToWrite : LongWord;
|
||||||
|
out AWrittenLen : LongWord
|
||||||
|
):LongInt;
|
||||||
|
function GetSize(out ASize : LongWord):LongInt;
|
||||||
|
function SetSize(const ANewSize : LongWord):LongInt;
|
||||||
|
function GetPosition(out APos : LongWord):LongWord;
|
||||||
|
function SetPosition(const ANewPos : LongWord):LongInt;
|
||||||
|
end;
|
||||||
|
|
||||||
|
TwstLibraryHandlerFunction =
|
||||||
|
function(
|
||||||
|
ARequestBuffer : IwstStream;
|
||||||
|
AErrorBuffer : Pointer;
|
||||||
|
var AErrorBufferLen : LongInt
|
||||||
|
):LongInt;
|
||||||
|
|
||||||
|
procedure wstCheck(const AReturn : LongInt);overload;
|
||||||
|
procedure wstCheck(const AReturn : LongInt; const AMsg : string);overload;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
|
||||||
|
procedure wstCheck(const AReturn : LongInt);
|
||||||
|
var
|
||||||
|
e : EwstCheckException;
|
||||||
|
begin
|
||||||
|
if ( AReturn <> RET_OK ) then begin
|
||||||
|
e := EwstCheckException.CreateFmt('wst Check Exception , return = %d',[AReturn]);
|
||||||
|
e.ReturnCode := AReturn;
|
||||||
|
raise e;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure wstCheck(const AReturn : LongInt; const AMsg : string);
|
||||||
|
var
|
||||||
|
e : EwstCheckException;
|
||||||
|
begin
|
||||||
|
if ( AReturn <> RET_OK ) then begin
|
||||||
|
e := EwstCheckException.Create(AMsg);
|
||||||
|
e.ReturnCode := AReturn;
|
||||||
|
raise e;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
170
wst/trunk/library_imp_utils.pas
Normal file
170
wst/trunk/library_imp_utils.pas
Normal file
@ -0,0 +1,170 @@
|
|||||||
|
unit library_imp_utils;
|
||||||
|
|
||||||
|
{$mode objfpc}{$H+}
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, SysUtils;
|
||||||
|
|
||||||
|
type
|
||||||
|
|
||||||
|
IwstModule = interface
|
||||||
|
['{A62A9A71-727E-47AD-9B84-0F7CA0AE51D5}']
|
||||||
|
function GetFileName():string;
|
||||||
|
function GetProc(const AProcName : string):Pointer;
|
||||||
|
end;
|
||||||
|
|
||||||
|
IwstModuleManager = interface
|
||||||
|
['{0A49D315-FF3E-40CD-BCA0-F958BCD5C57F}']
|
||||||
|
function Get(const AFileName : string):IwstModule;
|
||||||
|
procedure Clear();
|
||||||
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
LibraryManager : IwstModuleManager = nil;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses DynLibs;
|
||||||
|
|
||||||
|
|
||||||
|
type
|
||||||
|
|
||||||
|
{ TwstModule }
|
||||||
|
|
||||||
|
TwstModule = class(TInterfacedObject,IwstModule)
|
||||||
|
private
|
||||||
|
FFileName : string;
|
||||||
|
FHandle : TLibHandle;
|
||||||
|
private
|
||||||
|
procedure Load(const ADoLoad : Boolean);
|
||||||
|
protected
|
||||||
|
function GetFileName():string;
|
||||||
|
function GetProc(const AProcName : string):Pointer;
|
||||||
|
public
|
||||||
|
constructor Create(const AFileName : string);
|
||||||
|
destructor Destroy();override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TwstModuleManager }
|
||||||
|
|
||||||
|
TwstModuleManager = class(TInterfacedObject,IwstModuleManager)
|
||||||
|
private
|
||||||
|
FList : IInterfaceList;
|
||||||
|
private
|
||||||
|
function Load(const AFileName : string):IwstModule;
|
||||||
|
function GetItem(const AIndex : Integer):IwstModule;
|
||||||
|
function IndexOf(const AFileName : string):Integer;
|
||||||
|
protected
|
||||||
|
function Get(const AFileName : string):IwstModule;
|
||||||
|
procedure Clear();
|
||||||
|
public
|
||||||
|
constructor Create();
|
||||||
|
destructor Destroy();override;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TwstModule.Load(const ADoLoad : Boolean);
|
||||||
|
begin
|
||||||
|
if ADoLoad then begin
|
||||||
|
if ( FHandle = NilHandle ) then begin
|
||||||
|
FHandle := LoadLibrary(FFileName);
|
||||||
|
if ( FHandle = NilHandle ) then
|
||||||
|
raise Exception.CreateFmt('Error while loading : "%s".',[FFileName]);
|
||||||
|
end;
|
||||||
|
end else begin
|
||||||
|
if ( FHandle <> NilHandle ) then begin
|
||||||
|
FreeLibrary(FHandle);
|
||||||
|
FHandle := NilHandle;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstModule.GetFileName(): string;
|
||||||
|
begin
|
||||||
|
Result := FFileName;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstModule.GetProc(const AProcName: string): Pointer;
|
||||||
|
begin
|
||||||
|
Result := GetProcAddress(FHandle,AProcName);
|
||||||
|
if not Assigned(Result) then
|
||||||
|
raise Exception.CreateFmt('Procedure "%s" not found in this module( "%s" ).',[AProcName,FFileName]);
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TwstModule.Create(const AFileName: string);
|
||||||
|
begin
|
||||||
|
if not FileExists(AFileName) then
|
||||||
|
raise Exception.CreateFmt('File not found : "%s".',[AFileName]);
|
||||||
|
FHandle := NilHandle;
|
||||||
|
FFileName := AFileName;
|
||||||
|
Load(True);
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TwstModule.Destroy();
|
||||||
|
begin
|
||||||
|
Load(False);
|
||||||
|
inherited Destroy();
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TwstModuleManager }
|
||||||
|
|
||||||
|
function TwstModuleManager.Get(const AFileName: string): IwstModule;
|
||||||
|
var
|
||||||
|
i : Integer;
|
||||||
|
begin
|
||||||
|
i := IndexOf(AFileName);
|
||||||
|
if ( i < 0 ) then
|
||||||
|
Result := Load(AFileName)
|
||||||
|
else
|
||||||
|
Result := GetItem(i);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TwstModuleManager.Clear();
|
||||||
|
begin
|
||||||
|
FList.Clear();
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstModuleManager.Load(const AFileName: string): IwstModule;
|
||||||
|
begin
|
||||||
|
Result := TwstModule.Create(AFileName);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstModuleManager.GetItem(const AIndex: Integer): IwstModule;
|
||||||
|
begin
|
||||||
|
Result := FList[AIndex] as IwstModule;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstModuleManager.IndexOf(const AFileName: string): Integer;
|
||||||
|
begin
|
||||||
|
for Result := 0 to Pred(FList.Count) do begin
|
||||||
|
if AnsiSameStr(AFileName,(FList[Result] as IwstModule).GetFileName()) then
|
||||||
|
Exit;
|
||||||
|
end;
|
||||||
|
Result := -1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TwstModuleManager.Create();
|
||||||
|
begin
|
||||||
|
inherited;
|
||||||
|
FList := TInterfaceList.Create();
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TwstModuleManager.Destroy();
|
||||||
|
begin
|
||||||
|
FList := nil;
|
||||||
|
inherited Destroy();
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure InitLibraryManager();
|
||||||
|
begin
|
||||||
|
LibraryManager := TwstModuleManager.Create();
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
InitLibraryManager();
|
||||||
|
|
||||||
|
finalization
|
||||||
|
LibraryManager := nil;
|
||||||
|
|
||||||
|
end.
|
||||||
|
|
245
wst/trunk/library_protocol.pas
Normal file
245
wst/trunk/library_protocol.pas
Normal file
@ -0,0 +1,245 @@
|
|||||||
|
{
|
||||||
|
This file is part of the Web Service Toolkit
|
||||||
|
Copyright (c) 2006 by Inoussa OUEDRAOGO
|
||||||
|
|
||||||
|
This file is provide under modified LGPL licence
|
||||||
|
( the files COPYING.modifiedLGPL and COPYING.LGPL).
|
||||||
|
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
}
|
||||||
|
unit library_protocol;
|
||||||
|
|
||||||
|
{$mode objfpc}{$H+}
|
||||||
|
|
||||||
|
//{$DEFINE WST_DBG}
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, SysUtils,{$IFDEF WST_DBG}Dialogs,{$ENDIF}
|
||||||
|
service_intf, imp_utils, base_service_intf, library_base_intf,
|
||||||
|
library_imp_utils;
|
||||||
|
|
||||||
|
Const
|
||||||
|
sTRANSPORT_NAME = 'LIB';
|
||||||
|
|
||||||
|
Type
|
||||||
|
|
||||||
|
{$M+}
|
||||||
|
{ TLIBTransport }
|
||||||
|
TLIBTransport = class(TSimpleFactoryItem,ITransport)
|
||||||
|
Private
|
||||||
|
FPropMngr : IPropertyManager;
|
||||||
|
FModule : IwstModule;
|
||||||
|
FHandler : TwstLibraryHandlerFunction;
|
||||||
|
private
|
||||||
|
FContentType: string;
|
||||||
|
FFileName: string;
|
||||||
|
FTarget: string;
|
||||||
|
private
|
||||||
|
procedure SetFileName(const AValue: string);
|
||||||
|
procedure LoadModule();
|
||||||
|
public
|
||||||
|
constructor Create();override;
|
||||||
|
destructor Destroy();override;
|
||||||
|
function GetPropertyManager():IPropertyManager;
|
||||||
|
procedure SendAndReceive(ARequest,AResponse:TStream);
|
||||||
|
published
|
||||||
|
property ContentType : string read FContentType write FContentType;
|
||||||
|
property Target : string read FTarget write FTarget;
|
||||||
|
property FileName : string read FFileName write SetFileName;
|
||||||
|
end;
|
||||||
|
{$M+}
|
||||||
|
|
||||||
|
procedure LIB_Register_Transport();
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses binary_streamer;
|
||||||
|
|
||||||
|
type
|
||||||
|
|
||||||
|
{ TwstStream }
|
||||||
|
|
||||||
|
TwstStream = class(TInterfacedObject,IwstStream)
|
||||||
|
private
|
||||||
|
FStream : TStream;
|
||||||
|
protected
|
||||||
|
function Read(
|
||||||
|
ABuffer : Pointer;
|
||||||
|
const ALenToRead : LongWord;
|
||||||
|
out AReadedLen : LongWord
|
||||||
|
):LongInt;
|
||||||
|
function Write(
|
||||||
|
ABuffer : Pointer;
|
||||||
|
const ALenToWrite : LongWord;
|
||||||
|
out AWrittenLen : LongWord
|
||||||
|
):LongInt;
|
||||||
|
function GetSize(out ASize : LongWord):LongInt;
|
||||||
|
function SetSize(const ANewSize : LongWord):LongInt;
|
||||||
|
function GetPosition(out APos : LongWord):LongWord;
|
||||||
|
function SetPosition(const ANewPos : LongWord):LongInt;
|
||||||
|
public
|
||||||
|
constructor Create(AStream : TStream);
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TwstStream }
|
||||||
|
|
||||||
|
function TwstStream.Read(
|
||||||
|
ABuffer : Pointer;
|
||||||
|
const ALenToRead : LongWord;
|
||||||
|
out AReadedLen : LongWord
|
||||||
|
): LongInt;
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
AReadedLen := FStream.Read(ABuffer^,ALenToRead);
|
||||||
|
Result := RET_OK;
|
||||||
|
except
|
||||||
|
Result := RET_FALSE;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstStream.Write(
|
||||||
|
ABuffer : Pointer;
|
||||||
|
const ALenToWrite : LongWord;
|
||||||
|
out AWrittenLen : LongWord
|
||||||
|
): LongInt;
|
||||||
|
begin
|
||||||
|
try
|
||||||
|
AWrittenLen := FStream.Write(ABuffer^,ALenToWrite);
|
||||||
|
Result := RET_OK;
|
||||||
|
except
|
||||||
|
Result := RET_FALSE;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstStream.GetSize(out ASize: LongWord): LongInt;
|
||||||
|
begin
|
||||||
|
ASize := FStream.Size;
|
||||||
|
Result := RET_OK;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstStream.SetSize(const ANewSize: LongWord): LongInt;
|
||||||
|
begin
|
||||||
|
FStream.Size := ANewSize;
|
||||||
|
Result := RET_OK;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstStream.GetPosition(out APos: LongWord): LongWord;
|
||||||
|
begin
|
||||||
|
APos := FStream.Position;
|
||||||
|
Result := RET_OK;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TwstStream.SetPosition(const ANewPos: LongWord): LongInt;
|
||||||
|
begin
|
||||||
|
FStream.Position := ANewPos;
|
||||||
|
Result := RET_OK;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TwstStream.Create(AStream: TStream);
|
||||||
|
begin
|
||||||
|
Assert(Assigned(AStream));
|
||||||
|
FStream := AStream;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TLIBTransport }
|
||||||
|
|
||||||
|
procedure TLIBTransport.SetFileName(const AValue: string);
|
||||||
|
begin
|
||||||
|
FFileName := AValue;
|
||||||
|
if Assigned(FModule) and ( not AnsiSameStr(FFileName,FModule.GetFileName()) ) then begin
|
||||||
|
FHandler := nil;
|
||||||
|
FModule := nil;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TLIBTransport.LoadModule();
|
||||||
|
begin
|
||||||
|
if ( FModule = nil ) then begin
|
||||||
|
FModule := LibraryManager.Get(FFileName);
|
||||||
|
FHandler := TwstLibraryHandlerFunction(FModule.GetProc(WST_LIB_HANDLER));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
constructor TLIBTransport.Create();
|
||||||
|
begin
|
||||||
|
inherited Create();
|
||||||
|
FPropMngr := TPublishedPropertyManager.Create(Self);
|
||||||
|
FModule := nil;
|
||||||
|
FHandler := nil
|
||||||
|
end;
|
||||||
|
|
||||||
|
destructor TLIBTransport.Destroy();
|
||||||
|
begin
|
||||||
|
FPropMngr := Nil;
|
||||||
|
FModule := nil;
|
||||||
|
FHandler := nil;
|
||||||
|
inherited Destroy();
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TLIBTransport.GetPropertyManager(): IPropertyManager;
|
||||||
|
begin
|
||||||
|
Result := FPropMngr;
|
||||||
|
end;
|
||||||
|
|
||||||
|
const MAX_ERR_LEN = 500;
|
||||||
|
procedure TLIBTransport.SendAndReceive(ARequest, AResponse: TStream);
|
||||||
|
Var
|
||||||
|
wrtr : IDataStore;
|
||||||
|
buffStream : TMemoryStream;
|
||||||
|
strBuff : string;
|
||||||
|
intfBuffer : IwstStream;
|
||||||
|
bl : LongInt;
|
||||||
|
{$IFDEF WST_DBG}
|
||||||
|
s : string;
|
||||||
|
i : Int64;
|
||||||
|
{$ENDIF WST_DBG}
|
||||||
|
begin
|
||||||
|
LoadModule();
|
||||||
|
buffStream := TMemoryStream.Create();
|
||||||
|
try
|
||||||
|
wrtr := CreateBinaryWriter(buffStream);
|
||||||
|
wrtr.WriteInt32S(0);
|
||||||
|
wrtr.WriteStr(Target);
|
||||||
|
wrtr.WriteStr(ContentType);
|
||||||
|
SetLength(strBuff,ARequest.Size);
|
||||||
|
ARequest.Position := 0;
|
||||||
|
ARequest.Read(strBuff[1],Length(strBuff));
|
||||||
|
wrtr.WriteStr(strBuff);
|
||||||
|
buffStream.Position := 0;
|
||||||
|
wrtr.WriteInt32S(buffStream.Size-4);
|
||||||
|
|
||||||
|
buffStream.Position := 0;
|
||||||
|
intfBuffer := TwstStream.Create(buffStream);
|
||||||
|
bl := MAX_ERR_LEN;
|
||||||
|
strBuff := StringOfChar(#0,bl);
|
||||||
|
if ( FHandler(intfBuffer,Pointer(strBuff),bl) <> RET_OK ) then
|
||||||
|
raise Exception.Create(strBuff);
|
||||||
|
|
||||||
|
buffStream.Position := 0;
|
||||||
|
AResponse.Size := 0;
|
||||||
|
AResponse.CopyFrom(buffStream,0);
|
||||||
|
AResponse.Position := 0;
|
||||||
|
{$IFDEF WST_DBG}
|
||||||
|
i := AResponse.Position;
|
||||||
|
SetLength(s,AResponse.Size);
|
||||||
|
AResponse.Read(s[1],AResponse.Size);
|
||||||
|
if IsConsole then
|
||||||
|
WriteLn(s)
|
||||||
|
else
|
||||||
|
ShowMessage(s);
|
||||||
|
{$ENDIF WST_DBG}
|
||||||
|
finally
|
||||||
|
buffStream.Free();
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure LIB_Register_Transport();
|
||||||
|
begin
|
||||||
|
GetTransportRegistry().Register(sTRANSPORT_NAME,TSimpleItemFactory.Create(TLIBTransport) as IItemFactory);
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
121
wst/trunk/library_server_intf.pas
Normal file
121
wst/trunk/library_server_intf.pas
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
{
|
||||||
|
This file is part of the Web Service Toolkit
|
||||||
|
Copyright (c) 2006 by Inoussa OUEDRAOGO
|
||||||
|
|
||||||
|
This file is provide under modified LGPL licence
|
||||||
|
( the files COPYING.modifiedLGPL and COPYING.LGPL).
|
||||||
|
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
}
|
||||||
|
unit library_server_intf;
|
||||||
|
|
||||||
|
{$mode objfpc}{$H+}
|
||||||
|
|
||||||
|
interface
|
||||||
|
|
||||||
|
uses
|
||||||
|
Classes, SysUtils,
|
||||||
|
library_base_intf;
|
||||||
|
|
||||||
|
function wstHandleRequest(
|
||||||
|
ARequestBuffer : IwstStream;
|
||||||
|
AErrorBuffer : Pointer;
|
||||||
|
var AErrorBufferLen : LongInt
|
||||||
|
):LongInt;
|
||||||
|
|
||||||
|
implementation
|
||||||
|
uses base_service_intf, server_service_intf, server_service_imputils, binary_streamer;
|
||||||
|
|
||||||
|
function wstHandleRequest(
|
||||||
|
ARequestBuffer : IwstStream;
|
||||||
|
AErrorBuffer : Pointer;
|
||||||
|
var AErrorBufferLen : LongInt
|
||||||
|
):LongInt;
|
||||||
|
|
||||||
|
procedure CopyErrMsg(const AMsg : string);
|
||||||
|
var
|
||||||
|
j,m : Integer;
|
||||||
|
begin
|
||||||
|
m := AErrorBufferLen;
|
||||||
|
j := Length(AMsg);
|
||||||
|
if ( j > 0 ) then begin
|
||||||
|
if ( j > m ) then
|
||||||
|
j := m;
|
||||||
|
try
|
||||||
|
Move(AMsg[1],AErrorBuffer^,j);
|
||||||
|
except
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
Var
|
||||||
|
buff, trgt,ctntyp : string;
|
||||||
|
rqst : IRequestBuffer;
|
||||||
|
rdr : IDataStoreReader;
|
||||||
|
inStream, bufStream : TMemoryStream;
|
||||||
|
bs, bytesCount : LongWord;
|
||||||
|
begin
|
||||||
|
Result := RET_FALSE;
|
||||||
|
try
|
||||||
|
inStream := nil;
|
||||||
|
bufStream := nil;
|
||||||
|
if Assigned(ARequestBuffer) then begin
|
||||||
|
wstCheck(ARequestBuffer.GetSize(bs));
|
||||||
|
if ( bs > 0 ) then begin
|
||||||
|
try
|
||||||
|
inStream := TMemoryStream.Create();
|
||||||
|
bufStream := TMemoryStream.Create();
|
||||||
|
|
||||||
|
bufStream.Size := bs;
|
||||||
|
wstCheck(ARequestBuffer.SetPosition(0));
|
||||||
|
wstCheck(ARequestBuffer.Read(bufStream.Memory,bs,bytesCount));
|
||||||
|
if ( bs <> bytesCount ) then
|
||||||
|
wstCheck(RET_FALSE,'Invalid buffer operation (READ)');
|
||||||
|
wstCheck(ARequestBuffer.SetSize(0));
|
||||||
|
|
||||||
|
bufStream.Position := 0;
|
||||||
|
rdr := CreateBinaryReader(bufStream);
|
||||||
|
if ( rdr.ReadInt32S() <> ( bs - 4 ) ) then
|
||||||
|
wstCheck(RET_FALSE,'Invalid buffer.');
|
||||||
|
trgt := rdr.ReadStr();
|
||||||
|
ctntyp := rdr.ReadStr();
|
||||||
|
buff := rdr.ReadStr();
|
||||||
|
rdr := nil;
|
||||||
|
bufStream.Size := 0;
|
||||||
|
bufStream.Position := 0;
|
||||||
|
inStream.Write(buff[1],Length(buff));
|
||||||
|
SetLength(buff,0);
|
||||||
|
inStream.Position := 0;
|
||||||
|
rqst := TRequestBuffer.Create(trgt,ctntyp,inStream,bufStream);
|
||||||
|
HandleServiceRequest(rqst);
|
||||||
|
bs := bufStream.Size;
|
||||||
|
wstCheck(ARequestBuffer.SetSize(bs));
|
||||||
|
wstCheck(ARequestBuffer.SetPosition(0));
|
||||||
|
wstCheck(ARequestBuffer.Write(bufStream.Memory,bs,bytesCount));
|
||||||
|
if ( bs <> bytesCount ) then
|
||||||
|
wstCheck(RET_FALSE,'Invalid buffer operation (WRITE)');
|
||||||
|
Result := RET_OK;
|
||||||
|
finally
|
||||||
|
bufStream.Free();
|
||||||
|
inStream.Free();
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
except
|
||||||
|
on e : EwstCheckException do begin
|
||||||
|
Result := e.ReturnCode;
|
||||||
|
CopyErrMsg(e.Message);
|
||||||
|
end;
|
||||||
|
on e : Exception do begin
|
||||||
|
Result := RET_FALSE;
|
||||||
|
CopyErrMsg(e.Message);
|
||||||
|
end else begin
|
||||||
|
Result := RET_FALSE;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
end.
|
@ -166,7 +166,10 @@ begin
|
|||||||
TMemoryStream(AResponse).SaveToFile('log.log');
|
TMemoryStream(AResponse).SaveToFile('log.log');
|
||||||
SetLength(s,AResponse.Size);
|
SetLength(s,AResponse.Size);
|
||||||
Move(TMemoryStream(AResponse).Memory^,s[1],Length(s));
|
Move(TMemoryStream(AResponse).Memory^,s[1],Length(s));
|
||||||
ShowMessage(s);
|
if IsConsole then
|
||||||
|
WriteLn(s)
|
||||||
|
else
|
||||||
|
ShowMessage(s);
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -7,39 +7,41 @@ object fmain: Tfmain
|
|||||||
VertScrollBar.Page = 299
|
VertScrollBar.Page = 299
|
||||||
ActiveControl = edtA
|
ActiveControl = edtA
|
||||||
Caption = '"calculator" service test'
|
Caption = '"calculator" service test'
|
||||||
|
ClientHeight = 300
|
||||||
|
ClientWidth = 528
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
object Label1: TLabel
|
object Label1: TLabel
|
||||||
Left = 16
|
Left = 16
|
||||||
Height = 14
|
Height = 18
|
||||||
Top = 48
|
Top = 48
|
||||||
Width = 49
|
Width = 64
|
||||||
Caption = 'Param "A"'
|
Caption = 'Param "A"'
|
||||||
Color = clNone
|
Color = clNone
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object Label2: TLabel
|
object Label2: TLabel
|
||||||
Left = 17
|
Left = 17
|
||||||
Height = 14
|
Height = 18
|
||||||
Top = 80
|
Top = 80
|
||||||
Width = 48
|
Width = 64
|
||||||
Caption = 'Param "B"'
|
Caption = 'Param "B"'
|
||||||
Color = clNone
|
Color = clNone
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object Label3: TLabel
|
object Label3: TLabel
|
||||||
Left = 240
|
Left = 240
|
||||||
Height = 14
|
Height = 18
|
||||||
Top = 52
|
Top = 52
|
||||||
Width = 35
|
Width = 45
|
||||||
Caption = 'Format'
|
Caption = 'Format'
|
||||||
Color = clNone
|
Color = clNone
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object Label4: TLabel
|
object Label4: TLabel
|
||||||
Left = 16
|
Left = 16
|
||||||
Height = 14
|
Height = 18
|
||||||
Top = 8
|
Top = 8
|
||||||
Width = 40
|
Width = 49
|
||||||
Caption = 'Address'
|
Caption = 'Address'
|
||||||
Color = clNone
|
Color = clNone
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
|
@ -3,32 +3,33 @@
|
|||||||
LazarusResources.Add('Tfmain','FORMDATA',[
|
LazarusResources.Add('Tfmain','FORMDATA',[
|
||||||
'TPF0'#6'Tfmain'#5'fmain'#4'Left'#3#13#1#6'Height'#3','#1#3'Top'#3#234#0#5'Wi'
|
'TPF0'#6'Tfmain'#5'fmain'#4'Left'#3#13#1#6'Height'#3','#1#3'Top'#3#234#0#5'Wi'
|
||||||
+'dth'#3#16#2#18'HorzScrollBar.Page'#3#15#2#18'VertScrollBar.Page'#3'+'#1#13
|
+'dth'#3#16#2#18'HorzScrollBar.Page'#3#15#2#18'VertScrollBar.Page'#3'+'#1#13
|
||||||
+'ActiveControl'#7#4'edtA'#7'Caption'#6#25'"calculator" service test'#8'OnCre'
|
+'ActiveControl'#7#4'edtA'#7'Caption'#6#25'"calculator" service test'#12'Clie'
|
||||||
+'ate'#7#10'FormCreate'#0#6'TLabel'#6'Label1'#4'Left'#2#16#6'Height'#2#14#3'T'
|
+'ntHeight'#3','#1#11'ClientWidth'#3#16#2#8'OnCreate'#7#10'FormCreate'#0#6'TL'
|
||||||
+'op'#2'0'#5'Width'#2'1'#7'Caption'#6#9'Param "A"'#5'Color'#7#6'clNone'#11'Pa'
|
+'abel'#6'Label1'#4'Left'#2#16#6'Height'#2#18#3'Top'#2'0'#5'Width'#2'@'#7'Cap'
|
||||||
+'rentColor'#8#0#0#6'TLabel'#6'Label2'#4'Left'#2#17#6'Height'#2#14#3'Top'#2'P'
|
+'tion'#6#9'Param "A"'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6'TLabel'#6
|
||||||
+#5'Width'#2'0'#7'Caption'#6#9'Param "B"'#5'Color'#7#6'clNone'#11'ParentColor'
|
+'Label2'#4'Left'#2#17#6'Height'#2#18#3'Top'#2'P'#5'Width'#2'@'#7'Caption'#6#9
|
||||||
+#8#0#0#6'TLabel'#6'Label3'#4'Left'#3#240#0#6'Height'#2#14#3'Top'#2'4'#5'Widt'
|
+'Param "B"'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6'TLabel'#6'Label3'#4
|
||||||
+'h'#2'#'#7'Caption'#6#6'Format'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6
|
+'Left'#3#240#0#6'Height'#2#18#3'Top'#2'4'#5'Width'#2'-'#7'Caption'#6#6'Forma'
|
||||||
+'TLabel'#6'Label4'#4'Left'#2#16#6'Height'#2#14#3'Top'#2#8#5'Width'#2'('#7'Ca'
|
+'t'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6'TLabel'#6'Label4'#4'Left'#2
|
||||||
+'ption'#6#7'Address'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#5'TEdit'#4'e'
|
+#16#6'Height'#2#18#3'Top'#2#8#5'Width'#2'1'#7'Caption'#6#7'Address'#5'Color'
|
||||||
+'dtA'#4'Left'#2'P'#6'Height'#2#23#3'Top'#2'0'#5'Width'#2'P'#8'TabOrder'#2#0#4
|
+#7#6'clNone'#11'ParentColor'#8#0#0#5'TEdit'#4'edtA'#4'Left'#2'P'#6'Height'#2
|
||||||
+'Text'#6#1'5'#0#0#5'TEdit'#4'edtB'#4'Left'#2'P'#6'Height'#2#23#3'Top'#2'P'#5
|
+#23#3'Top'#2'0'#5'Width'#2'P'#8'TabOrder'#2#0#4'Text'#6#1'5'#0#0#5'TEdit'#4
|
||||||
+'Width'#2'P'#8'TabOrder'#2#1#4'Text'#6#1'2'#0#0#7'TButton'#7'btnExec'#4'Left'
|
+'edtB'#4'Left'#2'P'#6'Height'#2#23#3'Top'#2'P'#5'Width'#2'P'#8'TabOrder'#2#1
|
||||||
+#3#128#1#6'Height'#2#25#3'Top'#2#8#5'Width'#3#128#0#25'BorderSpacing.InnerBo'
|
+#4'Text'#6#1'2'#0#0#7'TButton'#7'btnExec'#4'Left'#3#128#1#6'Height'#2#25#3'T'
|
||||||
+'rder'#2#4#7'Caption'#6#7'Execute'#7'OnClick'#7#12'btnExecClick'#8'TabOrder'
|
+'op'#2#8#5'Width'#3#128#0#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#7'E'
|
||||||
+#2#2#0#0#5'TMemo'#6'mmoLog'#6'Height'#3#180#0#3'Top'#2'x'#5'Width'#3#16#2#5
|
+'xecute'#7'OnClick'#7#12'btnExecClick'#8'TabOrder'#2#2#0#0#5'TMemo'#6'mmoLog'
|
||||||
+'Align'#7#8'alBottom'#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'
|
+#6'Height'#3#180#0#3'Top'#2'x'#5'Width'#3#16#2#5'Align'#7#8'alBottom'#7'Anch'
|
||||||
+#0#12'Font.CharSet'#7#12'ANSI_CHARSET'#10'Font.Color'#7#7'clBlack'#11'Font.H'
|
+'ors'#11#5'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#12'Font.CharSet'#7#12'A'
|
||||||
+'eight'#2#237#9'Font.Name'#6#11'Courier New'#10'Font.Pitch'#7#7'fpFixed'#13
|
+'NSI_CHARSET'#10'Font.Color'#7#7'clBlack'#11'Font.Height'#2#237#9'Font.Name'
|
||||||
+'Lines.Strings'#1#6#0#0#10'ScrollBars'#7#6'ssBoth'#8'TabOrder'#2#3#0#0#5'TEd'
|
+#6#11'Courier New'#10'Font.Pitch'#7#7'fpFixed'#13'Lines.Strings'#1#6#0#0#10
|
||||||
+'it'#9'edtFormat'#4'Left'#3' '#1#6'Height'#2#23#3'Top'#2'2'#5'Width'#2'P'#8
|
+'ScrollBars'#7#6'ssBoth'#8'TabOrder'#2#3#0#0#5'TEdit'#9'edtFormat'#4'Left'#3
|
||||||
+'TabOrder'#2#4#4'Text'#6#4'SOAP'#0#0#7'TButton'#7'btnInit'#4'Left'#3#128#1#6
|
+' '#1#6'Height'#2#23#3'Top'#2'2'#5'Width'#2'P'#8'TabOrder'#2#4#4'Text'#6#4'S'
|
||||||
+'Height'#2#25#3'Top'#2'0'#5'Width'#2'K'#25'BorderSpacing.InnerBorder'#2#4#7
|
+'OAP'#0#0#7'TButton'#7'btnInit'#4'Left'#3#128#1#6'Height'#2#25#3'Top'#2'0'#5
|
||||||
+'Caption'#6#8'Init Obj'#7'OnClick'#7#12'btnInitClick'#8'TabOrder'#2#5#0#0#7
|
+'Width'#2'K'#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#8'Init Obj'#7'On'
|
||||||
+'TButton'#11'btnClearLog'#4'Left'#3#128#1#6'Height'#2#25#3'Top'#2'P'#5'Width'
|
+'Click'#7#12'btnInitClick'#8'TabOrder'#2#5#0#0#7'TButton'#11'btnClearLog'#4
|
||||||
+#2'K'#25'BorderSpacing.InnerBorder'#2#4#7'Caption'#6#9'Clear Log'#7'OnClick'
|
+'Left'#3#128#1#6'Height'#2#25#3'Top'#2'P'#5'Width'#2'K'#25'BorderSpacing.Inn'
|
||||||
+#7#16'btnClearLogClick'#8'TabOrder'#2#6#0#0#5'TEdit'#10'edtAddress'#4'Left'#2
|
+'erBorder'#2#4#7'Caption'#6#9'Clear Log'#7'OnClick'#7#16'btnClearLogClick'#8
|
||||||
+'P'#6'Height'#2#23#3'Top'#2#11#5'Width'#3' '#1#8'TabOrder'#2#7#4'Text'#6'7ht'
|
+'TabOrder'#2#6#0#0#5'TEdit'#10'edtAddress'#4'Left'#2'P'#6'Height'#2#23#3'Top'
|
||||||
+'tp:Address=http://127.0.0.1:8000/services/ICalculator'#0#0#0
|
+#2#11#5'Width'#3' '#1#8'TabOrder'#2#7#4'Text'#6'7http:Address=http://127.0.0'
|
||||||
|
+'.1:8000/services/ICalculator'#0#0#0
|
||||||
]);
|
]);
|
||||||
|
@ -42,6 +42,7 @@ implementation
|
|||||||
uses TypInfo, base_service_intf, soap_formatter, binary_formatter,
|
uses TypInfo, base_service_intf, soap_formatter, binary_formatter,
|
||||||
ics_tcp_protocol, ics_http_protocol,
|
ics_tcp_protocol, ics_http_protocol,
|
||||||
//synapse_http_protocol,
|
//synapse_http_protocol,
|
||||||
|
library_protocol,
|
||||||
service_intf;
|
service_intf;
|
||||||
|
|
||||||
{ Tfmain }
|
{ Tfmain }
|
||||||
@ -127,6 +128,7 @@ begin
|
|||||||
FObj := Nil;
|
FObj := Nil;
|
||||||
//ICS_RegisterTCP_Transport();
|
//ICS_RegisterTCP_Transport();
|
||||||
ICS_RegisterHTTP_Transport();
|
ICS_RegisterHTTP_Transport();
|
||||||
|
LIB_Register_Transport();
|
||||||
//SYNAPSE_RegisterHTTP_Transport();
|
//SYNAPSE_RegisterHTTP_Transport();
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
<MainUnit Value="0"/>
|
<MainUnit Value="0"/>
|
||||||
<IconPath Value="./"/>
|
<IconPath Value="./"/>
|
||||||
<TargetFileExt Value=".exe"/>
|
<TargetFileExt Value=".exe"/>
|
||||||
<ActiveEditorIndexAtStart Value="2"/>
|
<ActiveEditorIndexAtStart Value="0"/>
|
||||||
</General>
|
</General>
|
||||||
<PublishOptions>
|
<PublishOptions>
|
||||||
<Version Value="2"/>
|
<Version Value="2"/>
|
||||||
@ -26,7 +26,7 @@
|
|||||||
<PackageName Value="LCL"/>
|
<PackageName Value="LCL"/>
|
||||||
</Item1>
|
</Item1>
|
||||||
</RequiredPackages>
|
</RequiredPackages>
|
||||||
<Units Count="37">
|
<Units Count="39">
|
||||||
<Unit0>
|
<Unit0>
|
||||||
<Filename Value="test_calc.lpr"/>
|
<Filename Value="test_calc.lpr"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
@ -41,11 +41,9 @@
|
|||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<ResourceFilename Value="main_unit.lrs"/>
|
<ResourceFilename Value="main_unit.lrs"/>
|
||||||
<UnitName Value="main_unit"/>
|
<UnitName Value="main_unit"/>
|
||||||
<CursorPos X="10" Y="43"/>
|
<CursorPos X="18" Y="131"/>
|
||||||
<TopLine Value="28"/>
|
<TopLine Value="109"/>
|
||||||
<EditorIndex Value="0"/>
|
|
||||||
<UsageCount Value="80"/>
|
<UsageCount Value="80"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit1>
|
</Unit1>
|
||||||
<Unit2>
|
<Unit2>
|
||||||
<Filename Value="..\calculator.pas"/>
|
<Filename Value="..\calculator.pas"/>
|
||||||
@ -53,9 +51,7 @@
|
|||||||
<UnitName Value="calculator"/>
|
<UnitName Value="calculator"/>
|
||||||
<CursorPos X="30" Y="16"/>
|
<CursorPos X="30" Y="16"/>
|
||||||
<TopLine Value="8"/>
|
<TopLine Value="8"/>
|
||||||
<EditorIndex Value="10"/>
|
|
||||||
<UsageCount Value="80"/>
|
<UsageCount Value="80"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit2>
|
</Unit2>
|
||||||
<Unit3>
|
<Unit3>
|
||||||
<Filename Value="calculator_proxy.pas"/>
|
<Filename Value="calculator_proxy.pas"/>
|
||||||
@ -63,9 +59,7 @@
|
|||||||
<UnitName Value="calculator_proxy"/>
|
<UnitName Value="calculator_proxy"/>
|
||||||
<CursorPos X="28" Y="1"/>
|
<CursorPos X="28" Y="1"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="11"/>
|
|
||||||
<UsageCount Value="80"/>
|
<UsageCount Value="80"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit3>
|
</Unit3>
|
||||||
<Unit4>
|
<Unit4>
|
||||||
<Filename Value="..\..\..\..\service_intf.pas"/>
|
<Filename Value="..\..\..\..\service_intf.pas"/>
|
||||||
@ -155,27 +149,21 @@
|
|||||||
<UnitName Value="base_binary_formatter"/>
|
<UnitName Value="base_binary_formatter"/>
|
||||||
<CursorPos X="18" Y="151"/>
|
<CursorPos X="18" Y="151"/>
|
||||||
<TopLine Value="135"/>
|
<TopLine Value="135"/>
|
||||||
<EditorIndex Value="9"/>
|
|
||||||
<UsageCount Value="32"/>
|
<UsageCount Value="32"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit16>
|
</Unit16>
|
||||||
<Unit17>
|
<Unit17>
|
||||||
<Filename Value="..\..\..\soap_formatter.pas"/>
|
<Filename Value="..\..\..\soap_formatter.pas"/>
|
||||||
<UnitName Value="soap_formatter"/>
|
<UnitName Value="soap_formatter"/>
|
||||||
<CursorPos X="42" Y="171"/>
|
<CursorPos X="42" Y="171"/>
|
||||||
<TopLine Value="157"/>
|
<TopLine Value="157"/>
|
||||||
<EditorIndex Value="6"/>
|
|
||||||
<UsageCount Value="32"/>
|
<UsageCount Value="32"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit17>
|
</Unit17>
|
||||||
<Unit18>
|
<Unit18>
|
||||||
<Filename Value="..\..\..\service_intf.pas"/>
|
<Filename Value="..\..\..\service_intf.pas"/>
|
||||||
<UnitName Value="service_intf"/>
|
<UnitName Value="service_intf"/>
|
||||||
<CursorPos X="58" Y="47"/>
|
<CursorPos X="58" Y="47"/>
|
||||||
<TopLine Value="31"/>
|
<TopLine Value="31"/>
|
||||||
<EditorIndex Value="5"/>
|
|
||||||
<UsageCount Value="32"/>
|
<UsageCount Value="32"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit18>
|
</Unit18>
|
||||||
<Unit19>
|
<Unit19>
|
||||||
<Filename Value="..\..\..\ics_http_protocol.pas"/>
|
<Filename Value="..\..\..\ics_http_protocol.pas"/>
|
||||||
@ -189,18 +177,14 @@
|
|||||||
<UnitName Value="base_soap_formatter"/>
|
<UnitName Value="base_soap_formatter"/>
|
||||||
<CursorPos X="1" Y="1"/>
|
<CursorPos X="1" Y="1"/>
|
||||||
<TopLine Value="454"/>
|
<TopLine Value="454"/>
|
||||||
<EditorIndex Value="8"/>
|
|
||||||
<UsageCount Value="31"/>
|
<UsageCount Value="31"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit20>
|
</Unit20>
|
||||||
<Unit21>
|
<Unit21>
|
||||||
<Filename Value="..\..\..\base_service_intf.pas"/>
|
<Filename Value="..\..\..\base_service_intf.pas"/>
|
||||||
<UnitName Value="base_service_intf"/>
|
<UnitName Value="base_service_intf"/>
|
||||||
<CursorPos X="3" Y="235"/>
|
<CursorPos X="3" Y="235"/>
|
||||||
<TopLine Value="229"/>
|
<TopLine Value="229"/>
|
||||||
<EditorIndex Value="4"/>
|
|
||||||
<UsageCount Value="31"/>
|
<UsageCount Value="31"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit21>
|
</Unit21>
|
||||||
<Unit22>
|
<Unit22>
|
||||||
<Filename Value="D:\lazarusClean\fpcsrc\fcl\xml\dom.pp"/>
|
<Filename Value="D:\lazarusClean\fpcsrc\fcl\xml\dom.pp"/>
|
||||||
@ -226,9 +210,7 @@
|
|||||||
<UnitName Value="imp_utils"/>
|
<UnitName Value="imp_utils"/>
|
||||||
<CursorPos X="36" Y="104"/>
|
<CursorPos X="36" Y="104"/>
|
||||||
<TopLine Value="88"/>
|
<TopLine Value="88"/>
|
||||||
<EditorIndex Value="7"/>
|
|
||||||
<UsageCount Value="15"/>
|
<UsageCount Value="15"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit25>
|
</Unit25>
|
||||||
<Unit26>
|
<Unit26>
|
||||||
<Filename Value="D:\lazarusClean\fpcsrc\rtl\win32\classes.pp"/>
|
<Filename Value="D:\lazarusClean\fpcsrc\rtl\win32\classes.pp"/>
|
||||||
@ -289,40 +271,45 @@
|
|||||||
<UnitName Value="binary_formatter"/>
|
<UnitName Value="binary_formatter"/>
|
||||||
<CursorPos X="44" Y="132"/>
|
<CursorPos X="44" Y="132"/>
|
||||||
<TopLine Value="120"/>
|
<TopLine Value="120"/>
|
||||||
<EditorIndex Value="3"/>
|
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="10"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit34>
|
</Unit34>
|
||||||
<Unit35>
|
<Unit35>
|
||||||
<Filename Value="..\..\..\ics_tcp_protocol.pas"/>
|
<Filename Value="..\..\..\ics_tcp_protocol.pas"/>
|
||||||
<UnitName Value="ics_tcp_protocol"/>
|
<UnitName Value="ics_tcp_protocol"/>
|
||||||
<CursorPos X="1" Y="1"/>
|
<CursorPos X="3" Y="22"/>
|
||||||
<TopLine Value="106"/>
|
<TopLine Value="8"/>
|
||||||
<EditorIndex Value="1"/>
|
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="10"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit35>
|
</Unit35>
|
||||||
<Unit36>
|
<Unit36>
|
||||||
<Filename Value="..\srv\calculator.lrs"/>
|
<Filename Value="..\srv\calculator.lrs"/>
|
||||||
<CursorPos X="1" Y="1"/>
|
<CursorPos X="1" Y="1"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="2"/>
|
<UsageCount Value="10"/>
|
||||||
|
</Unit36>
|
||||||
|
<Unit37>
|
||||||
|
<Filename Value="..\..\..\library_protocol.pas"/>
|
||||||
|
<UnitName Value="library_protocol"/>
|
||||||
|
<CursorPos X="39" Y="213"/>
|
||||||
|
<TopLine Value="199"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit37>
|
||||||
|
<Unit38>
|
||||||
|
<Filename Value="..\..\metadata_browser\library_protocol.pas"/>
|
||||||
|
<UnitName Value="library_protocol"/>
|
||||||
|
<CursorPos X="18" Y="24"/>
|
||||||
|
<TopLine Value="10"/>
|
||||||
|
<EditorIndex Value="0"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="10"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit36>
|
</Unit38>
|
||||||
</Units>
|
</Units>
|
||||||
<JumpHistory Count="1" HistoryIndex="0">
|
<JumpHistory Count="0" HistoryIndex="-1"/>
|
||||||
<Position1>
|
|
||||||
<Filename Value="main_unit.pas"/>
|
|
||||||
<Caret Line="43" Column="10" TopLine="28"/>
|
|
||||||
</Position1>
|
|
||||||
</JumpHistory>
|
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
<CompilerOptions>
|
<CompilerOptions>
|
||||||
<Version Value="5"/>
|
<Version Value="5"/>
|
||||||
<PathDelim Value="\"/>
|
<PathDelim Value="\"/>
|
||||||
<SearchPaths>
|
<SearchPaths>
|
||||||
<OtherUnitFiles Value="D:\Lazarus\others_package\ics\latest_distr\Delphi\Vc32\;..\;..\..\..\;D:\Lazarus\others_package\synapse\"/>
|
<OtherUnitFiles Value="C:\lazarusClean\others_package\ics\latest_distr\Delphi\Vc32\;..\;..\..\..\;C:\lazarusClean\others_package\synapse\"/>
|
||||||
<UnitOutputDirectory Value="obj"/>
|
<UnitOutputDirectory Value="obj"/>
|
||||||
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
|
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
|
||||||
</SearchPaths>
|
</SearchPaths>
|
||||||
@ -342,7 +329,8 @@
|
|||||||
</Options>
|
</Options>
|
||||||
</Linking>
|
</Linking>
|
||||||
<Other>
|
<Other>
|
||||||
<CustomOptions Value="-Xi"/>
|
<CustomOptions Value="-Xi
|
||||||
|
"/>
|
||||||
<CompilerPath Value="$(CompPath)"/>
|
<CompilerPath Value="$(CompPath)"/>
|
||||||
</Other>
|
</Other>
|
||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
<MainUnit Value="0"/>
|
<MainUnit Value="0"/>
|
||||||
<IconPath Value="./"/>
|
<IconPath Value="./"/>
|
||||||
<TargetFileExt Value=""/>
|
<TargetFileExt Value=""/>
|
||||||
<ActiveEditorIndexAtStart Value="1"/>
|
<ActiveEditorIndexAtStart Value="3"/>
|
||||||
</General>
|
</General>
|
||||||
<PublishOptions>
|
<PublishOptions>
|
||||||
<Version Value="2"/>
|
<Version Value="2"/>
|
||||||
@ -32,15 +32,15 @@
|
|||||||
<PackageName Value="indylaz"/>
|
<PackageName Value="indylaz"/>
|
||||||
</Item1>
|
</Item1>
|
||||||
</RequiredPackages>
|
</RequiredPackages>
|
||||||
<Units Count="41">
|
<Units Count="44">
|
||||||
<Unit0>
|
<Unit0>
|
||||||
<Filename Value="test_google_api.pas"/>
|
<Filename Value="test_google_api.pas"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="test_google_api"/>
|
<UnitName Value="test_google_api"/>
|
||||||
<CursorPos X="22" Y="15"/>
|
<CursorPos X="19" Y="30"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="21"/>
|
||||||
<EditorIndex Value="1"/>
|
<EditorIndex Value="0"/>
|
||||||
<UsageCount Value="148"/>
|
<UsageCount Value="151"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit0>
|
</Unit0>
|
||||||
<Unit1>
|
<Unit1>
|
||||||
@ -49,9 +49,7 @@
|
|||||||
<UnitName Value="googlewebapi"/>
|
<UnitName Value="googlewebapi"/>
|
||||||
<CursorPos X="47" Y="85"/>
|
<CursorPos X="47" Y="85"/>
|
||||||
<TopLine Value="73"/>
|
<TopLine Value="73"/>
|
||||||
<EditorIndex Value="0"/>
|
<UsageCount Value="151"/>
|
||||||
<UsageCount Value="148"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit1>
|
</Unit1>
|
||||||
<Unit2>
|
<Unit2>
|
||||||
<Filename Value="googlewebapiimpunit.pas"/>
|
<Filename Value="googlewebapiimpunit.pas"/>
|
||||||
@ -155,7 +153,7 @@
|
|||||||
<UnitName Value="indy_http_protocol"/>
|
<UnitName Value="indy_http_protocol"/>
|
||||||
<CursorPos X="45" Y="166"/>
|
<CursorPos X="45" Y="166"/>
|
||||||
<TopLine Value="156"/>
|
<TopLine Value="156"/>
|
||||||
<UsageCount Value="63"/>
|
<UsageCount Value="66"/>
|
||||||
</Unit16>
|
</Unit16>
|
||||||
<Unit17>
|
<Unit17>
|
||||||
<Filename Value="..\..\ics_http_protocol.pas"/>
|
<Filename Value="..\..\ics_http_protocol.pas"/>
|
||||||
@ -163,9 +161,7 @@
|
|||||||
<UnitName Value="ics_http_protocol"/>
|
<UnitName Value="ics_http_protocol"/>
|
||||||
<CursorPos X="3" Y="17"/>
|
<CursorPos X="3" Y="17"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="2"/>
|
<UsageCount Value="128"/>
|
||||||
<UsageCount Value="125"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit17>
|
</Unit17>
|
||||||
<Unit18>
|
<Unit18>
|
||||||
<Filename Value="D:\Lazarus\others_package\ics\latest_distr\Delphi\Vc32\HttpProt.pas"/>
|
<Filename Value="D:\Lazarus\others_package\ics\latest_distr\Delphi\Vc32\HttpProt.pas"/>
|
||||||
@ -232,16 +228,20 @@
|
|||||||
<Unit27>
|
<Unit27>
|
||||||
<Filename Value="..\..\soap_formatter.pas"/>
|
<Filename Value="..\..\soap_formatter.pas"/>
|
||||||
<UnitName Value="soap_formatter"/>
|
<UnitName Value="soap_formatter"/>
|
||||||
<CursorPos X="3" Y="248"/>
|
<CursorPos X="36" Y="29"/>
|
||||||
<TopLine Value="227"/>
|
<TopLine Value="12"/>
|
||||||
|
<EditorIndex Value="1"/>
|
||||||
<UsageCount Value="47"/>
|
<UsageCount Value="47"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
</Unit27>
|
</Unit27>
|
||||||
<Unit28>
|
<Unit28>
|
||||||
<Filename Value="..\..\base_soap_formatter.pas"/>
|
<Filename Value="..\..\base_soap_formatter.pas"/>
|
||||||
<UnitName Value="base_soap_formatter"/>
|
<UnitName Value="base_soap_formatter"/>
|
||||||
<CursorPos X="31" Y="1268"/>
|
<CursorPos X="3" Y="694"/>
|
||||||
<TopLine Value="1253"/>
|
<TopLine Value="666"/>
|
||||||
|
<EditorIndex Value="2"/>
|
||||||
<UsageCount Value="47"/>
|
<UsageCount Value="47"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
</Unit28>
|
</Unit28>
|
||||||
<Unit29>
|
<Unit29>
|
||||||
<Filename Value="..\..\base_service_intf.pas"/>
|
<Filename Value="..\..\base_service_intf.pas"/>
|
||||||
@ -274,9 +274,11 @@
|
|||||||
<Filename Value="googlewebapi_proxy.pas"/>
|
<Filename Value="googlewebapi_proxy.pas"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="googlewebapi_proxy"/>
|
<UnitName Value="googlewebapi_proxy"/>
|
||||||
<CursorPos X="10" Y="104"/>
|
<CursorPos X="19" Y="104"/>
|
||||||
<TopLine Value="90"/>
|
<TopLine Value="93"/>
|
||||||
<UsageCount Value="66"/>
|
<EditorIndex Value="7"/>
|
||||||
|
<UsageCount Value="69"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
</Unit33>
|
</Unit33>
|
||||||
<Unit34>
|
<Unit34>
|
||||||
<Filename Value="..\..\..\v0.2\base_service_intf.pas"/>
|
<Filename Value="..\..\..\v0.2\base_service_intf.pas"/>
|
||||||
@ -295,9 +297,11 @@
|
|||||||
<Unit36>
|
<Unit36>
|
||||||
<Filename Value="..\..\synapse_http_protocol.pas"/>
|
<Filename Value="..\..\synapse_http_protocol.pas"/>
|
||||||
<UnitName Value="synapse_http_protocol"/>
|
<UnitName Value="synapse_http_protocol"/>
|
||||||
<CursorPos X="3" Y="154"/>
|
<CursorPos X="3" Y="178"/>
|
||||||
<TopLine Value="145"/>
|
<TopLine Value="153"/>
|
||||||
<UsageCount Value="11"/>
|
<EditorIndex Value="3"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
</Unit36>
|
</Unit36>
|
||||||
<Unit37>
|
<Unit37>
|
||||||
<Filename Value="D:\Lazarus\others_package\synapse\httpsend.pas"/>
|
<Filename Value="D:\Lazarus\others_package\synapse\httpsend.pas"/>
|
||||||
@ -327,14 +331,48 @@
|
|||||||
<TopLine Value="145"/>
|
<TopLine Value="145"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="10"/>
|
||||||
</Unit40>
|
</Unit40>
|
||||||
|
<Unit41>
|
||||||
|
<Filename Value="..\..\imp_utils.pas"/>
|
||||||
|
<UnitName Value="imp_utils"/>
|
||||||
|
<CursorPos X="1" Y="86"/>
|
||||||
|
<TopLine Value="72"/>
|
||||||
|
<EditorIndex Value="6"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit41>
|
||||||
|
<Unit42>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\lcl\include\lclintf.inc"/>
|
||||||
|
<CursorPos X="49" Y="342"/>
|
||||||
|
<TopLine Value="336"/>
|
||||||
|
<EditorIndex Value="5"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit42>
|
||||||
|
<Unit43>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\others_package\synapse\httpsend.pas"/>
|
||||||
|
<UnitName Value="httpsend"/>
|
||||||
|
<CursorPos X="14" Y="143"/>
|
||||||
|
<TopLine Value="120"/>
|
||||||
|
<EditorIndex Value="4"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit43>
|
||||||
</Units>
|
</Units>
|
||||||
<JumpHistory Count="0" HistoryIndex="-1"/>
|
<JumpHistory Count="1" HistoryIndex="0">
|
||||||
|
<Position1>
|
||||||
|
<Filename Value="test_google_api.pas"/>
|
||||||
|
<Caret Line="30" Column="19" TopLine="21"/>
|
||||||
|
</Position1>
|
||||||
|
</JumpHistory>
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
<CompilerOptions>
|
<CompilerOptions>
|
||||||
<Version Value="5"/>
|
<Version Value="5"/>
|
||||||
<PathDelim Value="\"/>
|
<PathDelim Value="\"/>
|
||||||
|
<Target>
|
||||||
|
<Filename Value="test_google_api.exe"/>
|
||||||
|
</Target>
|
||||||
<SearchPaths>
|
<SearchPaths>
|
||||||
<OtherUnitFiles Value="D:\LazarusClean\others_package\ics\latest_distr\Delphi\Vc32\;..\..\;D:\LazarusClean\others_package\synapse\"/>
|
<OtherUnitFiles Value="C:\LazarusClean\others_package\ics\latest_distr\Delphi\Vc32\;..\..\;C:\LazarusClean\others_package\synapse\"/>
|
||||||
<UnitOutputDirectory Value="obj"/>
|
<UnitOutputDirectory Value="obj"/>
|
||||||
<SrcPath Value="..\..\"/>
|
<SrcPath Value="..\..\"/>
|
||||||
</SearchPaths>
|
</SearchPaths>
|
||||||
@ -347,7 +385,8 @@
|
|||||||
<Generate Value="Faster"/>
|
<Generate Value="Faster"/>
|
||||||
</CodeGeneration>
|
</CodeGeneration>
|
||||||
<Other>
|
<Other>
|
||||||
<CustomOptions Value="-Xi"/>
|
<CustomOptions Value="-Xi
|
||||||
|
"/>
|
||||||
<CompilerPath Value="$(CompPath)"/>
|
<CompilerPath Value="$(CompPath)"/>
|
||||||
</Other>
|
</Other>
|
||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
|
@ -12,7 +12,9 @@ uses
|
|||||||
googlewebapi, googlewebapi_proxy;
|
googlewebapi, googlewebapi_proxy;
|
||||||
|
|
||||||
Const
|
Const
|
||||||
sADRESS = 'http:Address=http://api.google.com/search/beta2';
|
//sADRESS = 'http:Address=http://api.google.com/search/beta2;Proxy';
|
||||||
|
sADDRESS = 'http:Address=http://api.google.com/search/beta2'+
|
||||||
|
';ProxyServer=10.0.0.5;ProxyPort=8080';
|
||||||
sTARGET = 'urn:GoogleSearch';
|
sTARGET = 'urn:GoogleSearch';
|
||||||
sKEY = '0w9pU3tQFHJyjRUP/bKgv2qwCoXf5pop';
|
sKEY = '0w9pU3tQFHJyjRUP/bKgv2qwCoXf5pop';
|
||||||
sSERVICE_PROTOCOL = 'SOAP';
|
sSERVICE_PROTOCOL = 'SOAP';
|
||||||
@ -30,7 +32,7 @@ begin
|
|||||||
WriteLn();
|
WriteLn();
|
||||||
WriteLn('Enter phrase to spell :');
|
WriteLn('Enter phrase to spell :');
|
||||||
ReadLn(strBuffer);
|
ReadLn(strBuffer);
|
||||||
tmpObj := TGoogleSearch_Proxy.Create(sTARGET,sSERVICE_PROTOCOL,sADRESS);
|
tmpObj := TGoogleSearch_Proxy.Create(sTARGET,sSERVICE_PROTOCOL,sADDRESS);
|
||||||
Try
|
Try
|
||||||
strBuffer := tmpObj.doSpellingSuggestion(sKEY,strBuffer);
|
strBuffer := tmpObj.doSpellingSuggestion(sKEY,strBuffer);
|
||||||
WriteLn('google spell >>> ',strBuffer);
|
WriteLn('google spell >>> ',strBuffer);
|
||||||
|
@ -37,7 +37,7 @@
|
|||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="wst_http_server"/>
|
<UnitName Value="wst_http_server"/>
|
||||||
<CursorPos X="30" Y="29"/>
|
<CursorPos X="30" Y="29"/>
|
||||||
<TopLine Value="19"/>
|
<TopLine Value="12"/>
|
||||||
<EditorIndex Value="4"/>
|
<EditorIndex Value="4"/>
|
||||||
<UsageCount Value="202"/>
|
<UsageCount Value="202"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
@ -567,6 +567,9 @@
|
|||||||
<CompilerOptions>
|
<CompilerOptions>
|
||||||
<Version Value="5"/>
|
<Version Value="5"/>
|
||||||
<PathDelim Value="\"/>
|
<PathDelim Value="\"/>
|
||||||
|
<Target>
|
||||||
|
<Filename Value="wst_http_server.exe"/>
|
||||||
|
</Target>
|
||||||
<SearchPaths>
|
<SearchPaths>
|
||||||
<OtherUnitFiles Value="..\..\;..\calculator\;..\calculator\srv\"/>
|
<OtherUnitFiles Value="..\..\;..\calculator\;..\calculator\srv\"/>
|
||||||
<UnitOutputDirectory Value="obj"/>
|
<UnitOutputDirectory Value="obj"/>
|
||||||
|
279
wst/trunk/tests/library/lib_server.lpi
Normal file
279
wst/trunk/tests/library/lib_server.lpi
Normal file
@ -0,0 +1,279 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<CONFIG>
|
||||||
|
<ProjectOptions>
|
||||||
|
<PathDelim Value="\"/>
|
||||||
|
<Version Value="5"/>
|
||||||
|
<General>
|
||||||
|
<MainUnit Value="0"/>
|
||||||
|
<IconPath Value="./"/>
|
||||||
|
<TargetFileExt Value=".exe"/>
|
||||||
|
<ActiveEditorIndexAtStart Value="3"/>
|
||||||
|
</General>
|
||||||
|
<VersionInfo>
|
||||||
|
<ProjectVersion Value=""/>
|
||||||
|
<Language Value=""/>
|
||||||
|
<CharSet Value=""/>
|
||||||
|
</VersionInfo>
|
||||||
|
<PublishOptions>
|
||||||
|
<Version Value="2"/>
|
||||||
|
<IgnoreBinaries Value="False"/>
|
||||||
|
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
|
||||||
|
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
|
||||||
|
</PublishOptions>
|
||||||
|
<RunParams>
|
||||||
|
<local>
|
||||||
|
<FormatVersion Value="1"/>
|
||||||
|
<HostApplicationFilename Value="C:\Programmes\lazarus\wst\tests\metadata_browser\metadata_browser.exe"/>
|
||||||
|
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
|
||||||
|
</local>
|
||||||
|
</RunParams>
|
||||||
|
<RequiredPackages Count="1">
|
||||||
|
<Item1>
|
||||||
|
<PackageName Value="LCL"/>
|
||||||
|
</Item1>
|
||||||
|
</RequiredPackages>
|
||||||
|
<Units Count="17">
|
||||||
|
<Unit0>
|
||||||
|
<Filename Value="lib_server.lpr"/>
|
||||||
|
<IsPartOfProject Value="True"/>
|
||||||
|
<UnitName Value="lib_server"/>
|
||||||
|
<CursorPos X="88" Y="6"/>
|
||||||
|
<TopLine Value="2"/>
|
||||||
|
<EditorIndex Value="0"/>
|
||||||
|
<UsageCount Value="30"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit0>
|
||||||
|
<Unit1>
|
||||||
|
<Filename Value="..\tcp_server\server_unit.pas"/>
|
||||||
|
<UnitName Value="server_unit"/>
|
||||||
|
<CursorPos X="36" Y="6"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="13"/>
|
||||||
|
<ReadOnly Value="True"/>
|
||||||
|
</Unit1>
|
||||||
|
<Unit2>
|
||||||
|
<Filename Value="library_server_intf.pas"/>
|
||||||
|
<UnitName Value="library_server_intf"/>
|
||||||
|
<CursorPos X="45" Y="14"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="28"/>
|
||||||
|
</Unit2>
|
||||||
|
<Unit3>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\win32\classes.pp"/>
|
||||||
|
<UnitName Value="Classes"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit3>
|
||||||
|
<Unit4>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\objpas\classes\classes.inc"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="28"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit4>
|
||||||
|
<Unit5>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\objpas\classes\classesh.inc"/>
|
||||||
|
<CursorPos X="10" Y="699"/>
|
||||||
|
<TopLine Value="672"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit5>
|
||||||
|
<Unit6>
|
||||||
|
<Filename Value="..\..\server_service_intf.pas"/>
|
||||||
|
<UnitName Value="server_service_intf"/>
|
||||||
|
<CursorPos X="34" Y="202"/>
|
||||||
|
<TopLine Value="202"/>
|
||||||
|
<EditorIndex Value="4"/>
|
||||||
|
<UsageCount Value="14"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
<ReadOnly Value="True"/>
|
||||||
|
</Unit6>
|
||||||
|
<Unit7>
|
||||||
|
<Filename Value="..\..\base_service_intf.pas"/>
|
||||||
|
<UnitName Value="base_service_intf"/>
|
||||||
|
<CursorPos X="23" Y="13"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<EditorIndex Value="5"/>
|
||||||
|
<UsageCount Value="14"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
<ReadOnly Value="True"/>
|
||||||
|
</Unit7>
|
||||||
|
<Unit8>
|
||||||
|
<Filename Value="..\..\synapse_http_protocol.pas"/>
|
||||||
|
<UnitName Value="synapse_http_protocol"/>
|
||||||
|
<CursorPos X="45" Y="6"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
<ReadOnly Value="True"/>
|
||||||
|
</Unit8>
|
||||||
|
<Unit9>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\objpas\classes\streams.inc"/>
|
||||||
|
<CursorPos X="3" Y="611"/>
|
||||||
|
<TopLine Value="606"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit9>
|
||||||
|
<Unit10>
|
||||||
|
<Filename Value="..\..\service_intf.pas"/>
|
||||||
|
<UnitName Value="service_intf"/>
|
||||||
|
<CursorPos X="70" Y="140"/>
|
||||||
|
<TopLine Value="136"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
<ReadOnly Value="True"/>
|
||||||
|
</Unit10>
|
||||||
|
<Unit11>
|
||||||
|
<Filename Value="library_base_intf.pas"/>
|
||||||
|
<UnitName Value="library_base_intf"/>
|
||||||
|
<CursorPos X="2" Y="12"/>
|
||||||
|
<TopLine Value="4"/>
|
||||||
|
<UsageCount Value="20"/>
|
||||||
|
</Unit11>
|
||||||
|
<Unit12>
|
||||||
|
<Filename Value="..\..\library_base_intf.pas"/>
|
||||||
|
<IsPartOfProject Value="True"/>
|
||||||
|
<UnitName Value="library_base_intf"/>
|
||||||
|
<CursorPos X="11" Y="56"/>
|
||||||
|
<TopLine Value="37"/>
|
||||||
|
<EditorIndex Value="1"/>
|
||||||
|
<UsageCount Value="27"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit12>
|
||||||
|
<Unit13>
|
||||||
|
<Filename Value="..\..\metadata_repository.pas"/>
|
||||||
|
<UnitName Value="metadata_repository"/>
|
||||||
|
<CursorPos X="55" Y="102"/>
|
||||||
|
<TopLine Value="49"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit13>
|
||||||
|
<Unit14>
|
||||||
|
<Filename Value="..\..\binary_streamer.pas"/>
|
||||||
|
<UnitName Value="binary_streamer"/>
|
||||||
|
<CursorPos X="24" Y="74"/>
|
||||||
|
<TopLine Value="67"/>
|
||||||
|
<EditorIndex Value="2"/>
|
||||||
|
<UsageCount Value="11"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit14>
|
||||||
|
<Unit15>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<IsPartOfProject Value="True"/>
|
||||||
|
<UnitName Value="library_server_intf"/>
|
||||||
|
<CursorPos X="35" Y="103"/>
|
||||||
|
<TopLine Value="93"/>
|
||||||
|
<EditorIndex Value="3"/>
|
||||||
|
<UsageCount Value="21"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit15>
|
||||||
|
<Unit16>
|
||||||
|
<Filename Value="..\calculator\srv\calculator_imp.pas"/>
|
||||||
|
<UnitName Value="calculator_imp"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit16>
|
||||||
|
</Units>
|
||||||
|
<JumpHistory Count="13" HistoryIndex="12">
|
||||||
|
<Position1>
|
||||||
|
<Filename Value="..\..\binary_streamer.pas"/>
|
||||||
|
<Caret Line="89" Column="27" TopLine="67"/>
|
||||||
|
</Position1>
|
||||||
|
<Position2>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="107" Column="20" TopLine="67"/>
|
||||||
|
</Position2>
|
||||||
|
<Position3>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="1" Column="1" TopLine="1"/>
|
||||||
|
</Position3>
|
||||||
|
<Position4>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="58" Column="22" TopLine="34"/>
|
||||||
|
</Position4>
|
||||||
|
<Position5>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="64" Column="14" TopLine="40"/>
|
||||||
|
</Position5>
|
||||||
|
<Position6>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="71" Column="20" TopLine="47"/>
|
||||||
|
</Position6>
|
||||||
|
<Position7>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="107" Column="20" TopLine="79"/>
|
||||||
|
</Position7>
|
||||||
|
<Position8>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="1" Column="1" TopLine="1"/>
|
||||||
|
</Position8>
|
||||||
|
<Position9>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="58" Column="13" TopLine="34"/>
|
||||||
|
</Position9>
|
||||||
|
<Position10>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="64" Column="1" TopLine="40"/>
|
||||||
|
</Position10>
|
||||||
|
<Position11>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="70" Column="1" TopLine="46"/>
|
||||||
|
</Position11>
|
||||||
|
<Position12>
|
||||||
|
<Filename Value="..\..\library_server_intf.pas"/>
|
||||||
|
<Caret Line="73" Column="13" TopLine="64"/>
|
||||||
|
</Position12>
|
||||||
|
<Position13>
|
||||||
|
<Filename Value="lib_server.lpr"/>
|
||||||
|
<Caret Line="25" Column="3" TopLine="13"/>
|
||||||
|
</Position13>
|
||||||
|
</JumpHistory>
|
||||||
|
</ProjectOptions>
|
||||||
|
<CompilerOptions>
|
||||||
|
<Version Value="5"/>
|
||||||
|
<PathDelim Value="\"/>
|
||||||
|
<SearchPaths>
|
||||||
|
<OtherUnitFiles Value="..\calculator\;..\calculator\srv\;..\..\"/>
|
||||||
|
<UnitOutputDirectory Value="obj"/>
|
||||||
|
</SearchPaths>
|
||||||
|
<CodeGeneration>
|
||||||
|
<Generate Value="Faster"/>
|
||||||
|
</CodeGeneration>
|
||||||
|
<Linking>
|
||||||
|
<Debugging>
|
||||||
|
<GenerateDebugInfo Value="True"/>
|
||||||
|
</Debugging>
|
||||||
|
<Options>
|
||||||
|
<ExecutableType Value="Library"/>
|
||||||
|
</Options>
|
||||||
|
</Linking>
|
||||||
|
<Other>
|
||||||
|
<CompilerPath Value="$(CompPath)"/>
|
||||||
|
</Other>
|
||||||
|
</CompilerOptions>
|
||||||
|
<Debugging>
|
||||||
|
<BreakPoints Count="5">
|
||||||
|
<Item1>
|
||||||
|
<Source Value="..\..\home\inoussa\Projets\Laz\tests\soap\test_soap.pas"/>
|
||||||
|
<Line Value="15"/>
|
||||||
|
</Item1>
|
||||||
|
<Item2>
|
||||||
|
<Source Value="..\..\home\inoussa\Projets\Laz\tests\soap\test_soap.pas"/>
|
||||||
|
<Line Value="16"/>
|
||||||
|
</Item2>
|
||||||
|
<Item3>
|
||||||
|
<Source Value="..\..\home\inoussa\Projets\Laz\tests\soap\test_soap.pas"/>
|
||||||
|
<Line Value="18"/>
|
||||||
|
</Item3>
|
||||||
|
<Item4>
|
||||||
|
<Source Value="..\..\home\inoussa\Projets\Laz\tests\soap\googleintfimpunit.pas"/>
|
||||||
|
<Line Value="63"/>
|
||||||
|
</Item4>
|
||||||
|
<Item5>
|
||||||
|
<Source Value="..\..\basic_binder.pas"/>
|
||||||
|
<Line Value="62"/>
|
||||||
|
</Item5>
|
||||||
|
</BreakPoints>
|
||||||
|
<Watches Count="1">
|
||||||
|
<Item1>
|
||||||
|
<Expression Value="ASource.Memory^"/>
|
||||||
|
</Item1>
|
||||||
|
</Watches>
|
||||||
|
</Debugging>
|
||||||
|
</CONFIG>
|
45
wst/trunk/tests/library/lib_server.lpr
Normal file
45
wst/trunk/tests/library/lib_server.lpr
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
{
|
||||||
|
This file is part of the Web Service Toolkit
|
||||||
|
Copyright (c) 2006 by Inoussa OUEDRAOGO
|
||||||
|
|
||||||
|
This file is provide under modified LGPL licence
|
||||||
|
( the files COPYING.modifiedLGPL and COPYING.LGPL).
|
||||||
|
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
}
|
||||||
|
library lib_server;
|
||||||
|
|
||||||
|
{$mode objfpc}{$H+}
|
||||||
|
|
||||||
|
uses
|
||||||
|
SysUtils, Classes,
|
||||||
|
|
||||||
|
base_service_intf,
|
||||||
|
server_service_intf,
|
||||||
|
server_service_soap, server_binary_formatter,
|
||||||
|
metadata_repository, metadata_wsdl,
|
||||||
|
metadata_service, metadata_service_binder, metadata_service_imp,
|
||||||
|
library_base_intf, library_server_intf,
|
||||||
|
|
||||||
|
calculator_binder, calculator_imp;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
exports
|
||||||
|
wstHandleRequest name WST_LIB_HANDLER;
|
||||||
|
|
||||||
|
begin
|
||||||
|
RegisterStdTypes();
|
||||||
|
Server_service_RegisterBinaryFormat();
|
||||||
|
Server_service_RegisterSoapFormat();
|
||||||
|
|
||||||
|
RegisterCalculatorImplementationFactory();
|
||||||
|
Server_service_RegisterCalculatorService();
|
||||||
|
|
||||||
|
Server_service_RegisterWSTMetadataServiceService();
|
||||||
|
RegisterWSTMetadataServiceImplementationFactory();
|
||||||
|
end.
|
||||||
|
|
@ -7,7 +7,6 @@
|
|||||||
<MainUnit Value="0"/>
|
<MainUnit Value="0"/>
|
||||||
<IconPath Value="./"/>
|
<IconPath Value="./"/>
|
||||||
<TargetFileExt Value=".exe"/>
|
<TargetFileExt Value=".exe"/>
|
||||||
<ActiveEditorIndexAtStart Value="0"/>
|
|
||||||
</General>
|
</General>
|
||||||
<PublishOptions>
|
<PublishOptions>
|
||||||
<Version Value="2"/>
|
<Version Value="2"/>
|
||||||
@ -29,14 +28,14 @@
|
|||||||
<PackageName Value="indylaz"/>
|
<PackageName Value="indylaz"/>
|
||||||
</Item2>
|
</Item2>
|
||||||
</RequiredPackages>
|
</RequiredPackages>
|
||||||
<Units Count="16">
|
<Units Count="27">
|
||||||
<Unit0>
|
<Unit0>
|
||||||
<Filename Value="metadata_browser.lpr"/>
|
<Filename Value="metadata_browser.lpr"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="metadata_browser"/>
|
<UnitName Value="metadata_browser"/>
|
||||||
<CursorPos X="25" Y="1"/>
|
<CursorPos X="25" Y="1"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="68"/>
|
<UsageCount Value="74"/>
|
||||||
</Unit0>
|
</Unit0>
|
||||||
<Unit1>
|
<Unit1>
|
||||||
<Filename Value="umain.pas"/>
|
<Filename Value="umain.pas"/>
|
||||||
@ -44,74 +43,66 @@
|
|||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<ResourceFilename Value="umain.lrs"/>
|
<ResourceFilename Value="umain.lrs"/>
|
||||||
<UnitName Value="umain"/>
|
<UnitName Value="umain"/>
|
||||||
<CursorPos X="15" Y="49"/>
|
<CursorPos X="9" Y="81"/>
|
||||||
<TopLine Value="34"/>
|
<TopLine Value="79"/>
|
||||||
<EditorIndex Value="0"/>
|
<UsageCount Value="74"/>
|
||||||
<UsageCount Value="68"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit1>
|
</Unit1>
|
||||||
<Unit2>
|
<Unit2>
|
||||||
<Filename Value="..\..\metadata_service_proxy.pas"/>
|
<Filename Value="..\..\metadata_service_proxy.pas"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="metadata_service_proxy"/>
|
<UnitName Value="metadata_service_proxy"/>
|
||||||
<CursorPos X="61" Y="35"/>
|
<CursorPos X="1" Y="43"/>
|
||||||
<TopLine Value="23"/>
|
<TopLine Value="29"/>
|
||||||
<UsageCount Value="68"/>
|
<UsageCount Value="74"/>
|
||||||
</Unit2>
|
</Unit2>
|
||||||
<Unit3>
|
<Unit3>
|
||||||
<Filename Value="..\..\base_service_intf.pas"/>
|
<Filename Value="..\..\base_service_intf.pas"/>
|
||||||
<UnitName Value="base_service_intf"/>
|
<UnitName Value="base_service_intf"/>
|
||||||
<CursorPos X="1" Y="1196"/>
|
<CursorPos X="1" Y="1196"/>
|
||||||
<TopLine Value="1185"/>
|
<TopLine Value="1185"/>
|
||||||
<UsageCount Value="5"/>
|
<UsageCount Value="4"/>
|
||||||
</Unit3>
|
</Unit3>
|
||||||
<Unit4>
|
<Unit4>
|
||||||
<Filename Value="..\..\indy_http_protocol.pas"/>
|
<Filename Value="..\..\indy_http_protocol.pas"/>
|
||||||
<UnitName Value="indy_http_protocol"/>
|
<UnitName Value="indy_http_protocol"/>
|
||||||
<CursorPos X="27" Y="155"/>
|
<CursorPos X="27" Y="155"/>
|
||||||
<TopLine Value="144"/>
|
<TopLine Value="142"/>
|
||||||
<EditorIndex Value="6"/>
|
<UsageCount Value="17"/>
|
||||||
<UsageCount Value="18"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit4>
|
</Unit4>
|
||||||
<Unit5>
|
<Unit5>
|
||||||
<Filename Value="..\..\service_intf.pas"/>
|
<Filename Value="..\..\service_intf.pas"/>
|
||||||
<UnitName Value="service_intf"/>
|
<UnitName Value="service_intf"/>
|
||||||
<CursorPos X="34" Y="86"/>
|
<CursorPos X="34" Y="86"/>
|
||||||
<TopLine Value="117"/>
|
<TopLine Value="117"/>
|
||||||
<UsageCount Value="5"/>
|
<UsageCount Value="4"/>
|
||||||
</Unit5>
|
</Unit5>
|
||||||
<Unit6>
|
<Unit6>
|
||||||
<Filename Value="..\..\soap_formatter.pas"/>
|
<Filename Value="..\..\soap_formatter.pas"/>
|
||||||
<UnitName Value="soap_formatter"/>
|
<UnitName Value="soap_formatter"/>
|
||||||
<CursorPos X="1" Y="216"/>
|
<CursorPos X="1" Y="216"/>
|
||||||
<TopLine Value="189"/>
|
<TopLine Value="189"/>
|
||||||
<UsageCount Value="5"/>
|
<UsageCount Value="4"/>
|
||||||
</Unit6>
|
</Unit6>
|
||||||
<Unit7>
|
<Unit7>
|
||||||
<Filename Value="..\..\base_soap_formatter.pas"/>
|
<Filename Value="..\..\base_soap_formatter.pas"/>
|
||||||
<UnitName Value="base_soap_formatter"/>
|
<UnitName Value="base_soap_formatter"/>
|
||||||
<CursorPos X="30" Y="134"/>
|
<CursorPos X="30" Y="134"/>
|
||||||
<TopLine Value="134"/>
|
<TopLine Value="134"/>
|
||||||
<UsageCount Value="5"/>
|
<UsageCount Value="4"/>
|
||||||
</Unit7>
|
</Unit7>
|
||||||
<Unit8>
|
<Unit8>
|
||||||
<Filename Value="..\..\binary_formatter.pas"/>
|
<Filename Value="..\..\binary_formatter.pas"/>
|
||||||
<UnitName Value="binary_formatter"/>
|
<UnitName Value="binary_formatter"/>
|
||||||
<CursorPos X="38" Y="35"/>
|
<CursorPos X="38" Y="35"/>
|
||||||
<TopLine Value="32"/>
|
<TopLine Value="32"/>
|
||||||
<EditorIndex Value="3"/>
|
<UsageCount Value="16"/>
|
||||||
<UsageCount Value="17"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit8>
|
</Unit8>
|
||||||
<Unit9>
|
<Unit9>
|
||||||
<Filename Value="..\..\ics_http_protocol.pas"/>
|
<Filename Value="..\..\ics_http_protocol.pas"/>
|
||||||
<UnitName Value="ics_http_protocol"/>
|
<UnitName Value="ics_http_protocol"/>
|
||||||
<CursorPos X="3" Y="24"/>
|
<CursorPos X="3" Y="24"/>
|
||||||
<TopLine Value="13"/>
|
<TopLine Value="13"/>
|
||||||
<EditorIndex Value="2"/>
|
<UsageCount Value="12"/>
|
||||||
<UsageCount Value="13"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit9>
|
</Unit9>
|
||||||
<Unit10>
|
<Unit10>
|
||||||
<Filename Value="..\..\metadata_service.pas"/>
|
<Filename Value="..\..\metadata_service.pas"/>
|
||||||
@ -119,48 +110,116 @@
|
|||||||
<UnitName Value="metadata_service"/>
|
<UnitName Value="metadata_service"/>
|
||||||
<CursorPos X="35" Y="106"/>
|
<CursorPos X="35" Y="106"/>
|
||||||
<TopLine Value="99"/>
|
<TopLine Value="99"/>
|
||||||
<UsageCount Value="63"/>
|
<UsageCount Value="69"/>
|
||||||
</Unit10>
|
</Unit10>
|
||||||
<Unit11>
|
<Unit11>
|
||||||
<Filename Value="D:\lazarusClean\fpcsrc\rtl\inc\objpash.inc"/>
|
<Filename Value="D:\lazarusClean\fpcsrc\rtl\inc\objpash.inc"/>
|
||||||
<CursorPos X="23" Y="118"/>
|
<CursorPos X="23" Y="118"/>
|
||||||
<TopLine Value="107"/>
|
<TopLine Value="107"/>
|
||||||
<UsageCount Value="5"/>
|
<UsageCount Value="4"/>
|
||||||
</Unit11>
|
</Unit11>
|
||||||
<Unit12>
|
<Unit12>
|
||||||
<Filename Value="..\..\base_binary_formatter.pas"/>
|
<Filename Value="..\..\base_binary_formatter.pas"/>
|
||||||
<UnitName Value="base_binary_formatter"/>
|
<UnitName Value="base_binary_formatter"/>
|
||||||
<CursorPos X="49" Y="650"/>
|
<CursorPos X="49" Y="650"/>
|
||||||
<TopLine Value="639"/>
|
<TopLine Value="639"/>
|
||||||
<EditorIndex Value="4"/>
|
<UsageCount Value="16"/>
|
||||||
<UsageCount Value="17"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit12>
|
</Unit12>
|
||||||
<Unit13>
|
<Unit13>
|
||||||
<Filename Value="..\..\synapse_http_protocol.pas"/>
|
<Filename Value="..\..\synapse_http_protocol.pas"/>
|
||||||
<UnitName Value="synapse_http_protocol"/>
|
<UnitName Value="synapse_http_protocol"/>
|
||||||
<CursorPos X="34" Y="102"/>
|
<CursorPos X="5" Y="181"/>
|
||||||
<TopLine Value="92"/>
|
<TopLine Value="153"/>
|
||||||
<EditorIndex Value="5"/>
|
|
||||||
<UsageCount Value="17"/>
|
<UsageCount Value="17"/>
|
||||||
<Loaded Value="True"/>
|
<ReadOnly Value="True"/>
|
||||||
</Unit13>
|
</Unit13>
|
||||||
<Unit14>
|
<Unit14>
|
||||||
<Filename Value="D:\lazarusClean\others_package\ics\latest_distr\Delphi\Vc32\WSockBuf.pas"/>
|
<Filename Value="D:\lazarusClean\others_package\ics\latest_distr\Delphi\Vc32\WSockBuf.pas"/>
|
||||||
<UnitName Value="WSockBuf"/>
|
<UnitName Value="WSockBuf"/>
|
||||||
<CursorPos X="1" Y="1"/>
|
<CursorPos X="1" Y="1"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="9"/>
|
||||||
</Unit14>
|
</Unit14>
|
||||||
<Unit15>
|
<Unit15>
|
||||||
<Filename Value="..\..\ics_tcp_protocol.pas"/>
|
<Filename Value="..\..\ics_tcp_protocol.pas"/>
|
||||||
<UnitName Value="ics_tcp_protocol"/>
|
<UnitName Value="ics_tcp_protocol"/>
|
||||||
<CursorPos X="35" Y="83"/>
|
<CursorPos X="22" Y="69"/>
|
||||||
<TopLine Value="31"/>
|
<TopLine Value="58"/>
|
||||||
<EditorIndex Value="1"/>
|
<UsageCount Value="13"/>
|
||||||
<UsageCount Value="12"/>
|
<ReadOnly Value="True"/>
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit15>
|
</Unit15>
|
||||||
|
<Unit16>
|
||||||
|
<Filename Value="library_protocol.pas"/>
|
||||||
|
<UnitName Value="library_protocol"/>
|
||||||
|
<CursorPos X="1" Y="140"/>
|
||||||
|
<TopLine Value="180"/>
|
||||||
|
<UsageCount Value="26"/>
|
||||||
|
</Unit16>
|
||||||
|
<Unit17>
|
||||||
|
<Filename Value="library_imp_utils.pas"/>
|
||||||
|
<UnitName Value="library_imp_utils"/>
|
||||||
|
<CursorPos X="1" Y="92"/>
|
||||||
|
<TopLine Value="78"/>
|
||||||
|
<UsageCount Value="26"/>
|
||||||
|
</Unit17>
|
||||||
|
<Unit18>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\objpas\classes\classesh.inc"/>
|
||||||
|
<CursorPos X="58" Y="1473"/>
|
||||||
|
<TopLine Value="1445"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit18>
|
||||||
|
<Unit19>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\objpas\classes\intf.inc"/>
|
||||||
|
<CursorPos X="9" Y="103"/>
|
||||||
|
<TopLine Value="99"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit19>
|
||||||
|
<Unit20>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\objpas\sysutils\sysstrh.inc"/>
|
||||||
|
<CursorPos X="10" Y="80"/>
|
||||||
|
<TopLine Value="66"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit20>
|
||||||
|
<Unit21>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\objpas\sysutils\sysstr.inc"/>
|
||||||
|
<CursorPos X="5" Y="453"/>
|
||||||
|
<TopLine Value="451"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit21>
|
||||||
|
<Unit22>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\inc\dynlibs.pp"/>
|
||||||
|
<UnitName Value="dynlibs"/>
|
||||||
|
<CursorPos X="25" Y="64"/>
|
||||||
|
<TopLine Value="39"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit22>
|
||||||
|
<Unit23>
|
||||||
|
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\win32\dynlibs.inc"/>
|
||||||
|
<CursorPos X="10" Y="43"/>
|
||||||
|
<TopLine Value="28"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit23>
|
||||||
|
<Unit24>
|
||||||
|
<Filename Value="..\..\library_base_intf.pas"/>
|
||||||
|
<UnitName Value="library_base_intf"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit24>
|
||||||
|
<Unit25>
|
||||||
|
<Filename Value="..\..\metadata_repository.pas"/>
|
||||||
|
<UnitName Value="metadata_repository"/>
|
||||||
|
<CursorPos X="1" Y="313"/>
|
||||||
|
<TopLine Value="299"/>
|
||||||
|
<UsageCount Value="11"/>
|
||||||
|
</Unit25>
|
||||||
|
<Unit26>
|
||||||
|
<Filename Value="..\..\library_imp_utils.pas"/>
|
||||||
|
<UnitName Value="library_imp_utils"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit26>
|
||||||
</Units>
|
</Units>
|
||||||
<JumpHistory Count="0" HistoryIndex="-1"/>
|
<JumpHistory Count="0" HistoryIndex="-1"/>
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
@ -171,7 +230,7 @@
|
|||||||
<Filename Value="metadata_browser.exe"/>
|
<Filename Value="metadata_browser.exe"/>
|
||||||
</Target>
|
</Target>
|
||||||
<SearchPaths>
|
<SearchPaths>
|
||||||
<OtherUnitFiles Value="..\..\;D:\lazarusClean\others_package\synapse\;D:\lazarusClean\others_package\ics\latest_distr\Delphi\Vc32\"/>
|
<OtherUnitFiles Value="..\..\;c:\lazarusClean\others_package\synapse\;c:\lazarusClean\others_package\ics\latest_distr\Delphi\Vc32\"/>
|
||||||
<UnitOutputDirectory Value="obj"/>
|
<UnitOutputDirectory Value="obj"/>
|
||||||
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
|
<SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
|
||||||
</SearchPaths>
|
</SearchPaths>
|
||||||
@ -186,7 +245,8 @@
|
|||||||
</Options>
|
</Options>
|
||||||
</Linking>
|
</Linking>
|
||||||
<Other>
|
<Other>
|
||||||
<CustomOptions Value="-Xi"/>
|
<CustomOptions Value="-Xi
|
||||||
|
"/>
|
||||||
<CompilerPath Value="$(CompPath)"/>
|
<CompilerPath Value="$(CompPath)"/>
|
||||||
</Other>
|
</Other>
|
||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
|
@ -7,25 +7,29 @@ object fMain: TfMain
|
|||||||
VertScrollBar.Page = 310
|
VertScrollBar.Page = 310
|
||||||
ActiveControl = edtAddress
|
ActiveControl = edtAddress
|
||||||
Caption = 'WST Metadata Browser'
|
Caption = 'WST Metadata Browser'
|
||||||
|
ClientHeight = 311
|
||||||
|
ClientWidth = 574
|
||||||
object pnlHead: TPanel
|
object pnlHead: TPanel
|
||||||
Height = 82
|
Height = 82
|
||||||
Width = 574
|
Width = 574
|
||||||
Align = alTop
|
Align = alTop
|
||||||
|
ClientHeight = 82
|
||||||
|
ClientWidth = 574
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object Label1: TLabel
|
object Label1: TLabel
|
||||||
Left = 14
|
Left = 14
|
||||||
Height = 14
|
Height = 18
|
||||||
Top = 12
|
Top = 12
|
||||||
Width = 20
|
Width = 26
|
||||||
Caption = 'URL'
|
Caption = 'URL'
|
||||||
Color = clNone
|
Color = clNone
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object Label3: TLabel
|
object Label3: TLabel
|
||||||
Left = 11
|
Left = 11
|
||||||
Height = 14
|
Height = 18
|
||||||
Top = 46
|
Top = 46
|
||||||
Width = 35
|
Width = 45
|
||||||
Caption = 'Format'
|
Caption = 'Format'
|
||||||
Color = clNone
|
Color = clNone
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
@ -58,7 +62,7 @@ object fMain: TfMain
|
|||||||
Left = 88
|
Left = 88
|
||||||
Height = 37
|
Height = 37
|
||||||
Top = 35
|
Top = 35
|
||||||
Width = 238
|
Width = 280
|
||||||
AutoFill = True
|
AutoFill = True
|
||||||
Caption = ' &Format '
|
Caption = ' &Format '
|
||||||
ChildSizing.LeftRightSpacing = 6
|
ChildSizing.LeftRightSpacing = 6
|
||||||
@ -85,6 +89,8 @@ object fMain: TfMain
|
|||||||
Align = alClient
|
Align = alClient
|
||||||
BevelInner = bvRaised
|
BevelInner = bvRaised
|
||||||
BevelOuter = bvLowered
|
BevelOuter = bvLowered
|
||||||
|
ClientHeight = 229
|
||||||
|
ClientWidth = 574
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object Label2: TLabel
|
object Label2: TLabel
|
||||||
Left = 14
|
Left = 14
|
||||||
@ -135,8 +141,8 @@ object fMain: TfMain
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
object AL: TActionList
|
object AL: TActionList
|
||||||
left = 48
|
left = 72
|
||||||
top = 384
|
top = 464
|
||||||
object actGetRepositoryList: TAction
|
object actGetRepositoryList: TAction
|
||||||
Caption = 'Get Rep. List'
|
Caption = 'Get Rep. List'
|
||||||
OnExecute = actGetRepositoryListExecute
|
OnExecute = actGetRepositoryListExecute
|
||||||
|
@ -3,49 +3,50 @@
|
|||||||
LazarusResources.Add('TfMain','FORMDATA',[
|
LazarusResources.Add('TfMain','FORMDATA',[
|
||||||
'TPF0'#6'TfMain'#5'fMain'#4'Left'#3#175#0#6'Height'#3'7'#1#3'Top'#3#233#0#5'W'
|
'TPF0'#6'TfMain'#5'fMain'#4'Left'#3#175#0#6'Height'#3'7'#1#3'Top'#3#233#0#5'W'
|
||||||
+'idth'#3'>'#2#18'HorzScrollBar.Page'#3'='#2#18'VertScrollBar.Page'#3'6'#1#13
|
+'idth'#3'>'#2#18'HorzScrollBar.Page'#3'='#2#18'VertScrollBar.Page'#3'6'#1#13
|
||||||
+'ActiveControl'#7#10'edtAddress'#7'Caption'#6#20'WST Metadata Browser'#0#6'T'
|
+'ActiveControl'#7#10'edtAddress'#7'Caption'#6#20'WST Metadata Browser'#12'Cl'
|
||||||
+'Panel'#7'pnlHead'#6'Height'#2'R'#5'Width'#3'>'#2#5'Align'#7#5'alTop'#8'TabO'
|
+'ientHeight'#3'7'#1#11'ClientWidth'#3'>'#2#0#6'TPanel'#7'pnlHead'#6'Height'#2
|
||||||
+'rder'#2#0#0#6'TLabel'#6'Label1'#4'Left'#2#14#6'Height'#2#14#3'Top'#2#12#5'W'
|
+'R'#5'Width'#3'>'#2#5'Align'#7#5'alTop'#12'ClientHeight'#2'R'#11'ClientWidth'
|
||||||
+'idth'#2#20#7'Caption'#6#3'URL'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#6
|
+#3'>'#2#8'TabOrder'#2#0#0#6'TLabel'#6'Label1'#4'Left'#2#14#6'Height'#2#18#3
|
||||||
+'TLabel'#6'Label3'#4'Left'#2#11#6'Height'#2#14#3'Top'#2'.'#5'Width'#2'#'#7'C'
|
+'Top'#2#12#5'Width'#2#26#7'Caption'#6#3'URL'#5'Color'#7#6'clNone'#11'ParentC'
|
||||||
+'aption'#6#6'Format'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#5'TEdit'#10
|
+'olor'#8#0#0#6'TLabel'#6'Label3'#4'Left'#2#11#6'Height'#2#18#3'Top'#2'.'#5'W'
|
||||||
+'edtAddress'#4'Left'#2'X'#6'Height'#2#23#3'Top'#2#12#5'Width'#3#224#1#7'Anch'
|
+'idth'#2'-'#7'Caption'#6#6'Format'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0
|
||||||
+'ors'#11#5'akTop'#6'akLeft'#7'akRight'#0#12'Font.CharSet'#7#12'ANSI_CHARSET'
|
+#5'TEdit'#10'edtAddress'#4'Left'#2'X'#6'Height'#2#23#3'Top'#2#12#5'Width'#3
|
||||||
+#10'Font.Color'#7#7'clBlack'#11'Font.Height'#2#243#9'Font.Name'#6#5'Arial'#10
|
+#224#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#12'Font.CharSet'#7#12'A'
|
||||||
+'Font.Pitch'#7#10'fpVariable'#8'TabOrder'#2#0#4'Text'#6'6http://127.0.0.1:80'
|
+'NSI_CHARSET'#10'Font.Color'#7#7'clBlack'#11'Font.Height'#2#243#9'Font.Name'
|
||||||
+'00/wst/services/IWSTMetadataService'#0#0#7'TButton'#13'btnGetRepList'#4'Lef'
|
+#6#5'Arial'#10'Font.Pitch'#7#10'fpVariable'#8'TabOrder'#2#0#4'Text'#6'6http:'
|
||||||
+'t'#3#221#1#6'Height'#2#25#3'Top'#2'('#5'Width'#2'['#6'Action'#7#20'actGetRe'
|
+'//127.0.0.1:8000/wst/services/IWSTMetadataService'#0#0#7'TButton'#13'btnGet'
|
||||||
+'positoryList'#7'Anchors'#11#5'akTop'#7'akRight'#0#25'BorderSpacing.InnerBor'
|
+'RepList'#4'Left'#3#221#1#6'Height'#2#25#3'Top'#2'('#5'Width'#2'['#6'Action'
|
||||||
+'der'#2#4#8'TabOrder'#2#2#0#0#11'TRadioGroup'#9'edtFormat'#4'Left'#2'X'#6'He'
|
+#7#20'actGetRepositoryList'#7'Anchors'#11#5'akTop'#7'akRight'#0#25'BorderSpa'
|
||||||
+'ight'#2'%'#3'Top'#2'#'#5'Width'#3#238#0#8'AutoFill'#9#7'Caption'#6#9' &Form'
|
+'cing.InnerBorder'#2#4#8'TabOrder'#2#2#0#0#11'TRadioGroup'#9'edtFormat'#4'Le'
|
||||||
+'at '#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBottomSpacing'#2
|
+'ft'#2'X'#6'Height'#2'%'#3'Top'#2'#'#5'Width'#3#24#1#8'AutoFill'#9#7'Caption'
|
||||||
+#6#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousChildResize'#27'Child'
|
+#6#9' &Format '#28'ChildSizing.LeftRightSpacing'#2#6#28'ChildSizing.TopBotto'
|
||||||
+'Sizing.EnlargeVertical'#7#24'crsHomogenousChildResize'#28'ChildSizing.Shrin'
|
+'mSpacing'#2#6#29'ChildSizing.EnlargeHorizontal'#7#24'crsHomogenousChildResi'
|
||||||
+'kHorizontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'#7#14'crsSc'
|
+'ze'#27'ChildSizing.EnlargeVertical'#7#24'crsHomogenousChildResize'#28'Child'
|
||||||
+'aleChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopToBottom'#27'Ch'
|
+'Sizing.ShrinkHorizontal'#7#14'crsScaleChilds'#26'ChildSizing.ShrinkVertical'
|
||||||
+'ildSizing.ControlsPerLine'#2#2#7'Columns'#2#2#9'ItemIndex'#2#0#13'Items.Str'
|
+#7#14'crsScaleChilds'#18'ChildSizing.Layout'#7#29'cclLeftToRightThenTopToBot'
|
||||||
+'ings'#1#6#5'&SOAP'#6#7'&binary'#0#8'TabOrder'#2#1#0#0#0#6'TPanel'#9'pnlClie'
|
+'tom'#27'ChildSizing.ControlsPerLine'#2#2#7'Columns'#2#2#9'ItemIndex'#2#0#13
|
||||||
+'nt'#6'Height'#3#229#0#3'Top'#2'R'#5'Width'#3'>'#2#5'Align'#7#8'alClient'#10
|
+'Items.Strings'#1#6#5'&SOAP'#6#7'&binary'#0#8'TabOrder'#2#1#0#0#0#6'TPanel'#9
|
||||||
+'BevelInner'#7#8'bvRaised'#10'BevelOuter'#7#9'bvLowered'#8'TabOrder'#2#1#0#6
|
+'pnlClient'#6'Height'#3#229#0#3'Top'#2'R'#5'Width'#3'>'#2#5'Align'#7#8'alCli'
|
||||||
+'TLabel'#6'Label2'#4'Left'#2#14#6'Height'#2#14#3'Top'#2#14#5'Width'#2'5'#7'C'
|
+'ent'#10'BevelInner'#7#8'bvRaised'#10'BevelOuter'#7#9'bvLowered'#12'ClientHe'
|
||||||
+'aption'#6#10'Repository'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#9'TComb'
|
+'ight'#3#229#0#11'ClientWidth'#3'>'#2#8'TabOrder'#2#1#0#6'TLabel'#6'Label2'#4
|
||||||
+'oBox'#17'edtRepositoryList'#4'Left'#2'p'#6'Height'#2#21#3'Top'#2#7#5'Width'
|
+'Left'#2#14#6'Height'#2#14#3'Top'#2#14#5'Width'#2'5'#7'Caption'#6#10'Reposit'
|
||||||
+#3'X'#1#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#16'AutoCompleteText'#11
|
+'ory'#5'Color'#7#6'clNone'#11'ParentColor'#8#0#0#9'TComboBox'#17'edtReposito'
|
||||||
+#22'cbactEndOfLineComplete'#20'cbactSearchAscending'#0#9'MaxLength'#2#0#8'Ta'
|
+'ryList'#4'Left'#2'p'#6'Height'#2#21#3'Top'#2#7#5'Width'#3'X'#1#7'Anchors'#11
|
||||||
+'bOrder'#2#0#4'Text'#6#17'edtRepositoryList'#0#0#9'TTreeView'#11'tvwMetadata'
|
+#5'akTop'#6'akLeft'#7'akRight'#0#16'AutoCompleteText'#11#22'cbactEndOfLineCo'
|
||||||
+#4'Left'#2#11#6'Height'#3#176#0#3'Top'#2'&'#5'Width'#3'+'#2#7'Anchors'#11#5
|
+'mplete'#20'cbactSearchAscending'#0#9'MaxLength'#2#0#8'TabOrder'#2#0#4'Text'
|
||||||
+'akTop'#6'akLeft'#7'akRight'#8'akBottom'#0#17'DefaultItemHeight'#2#18#12'Fon'
|
+#6#17'edtRepositoryList'#0#0#9'TTreeView'#11'tvwMetadata'#4'Left'#2#11#6'Hei'
|
||||||
+'t.CharSet'#7#12'ANSI_CHARSET'#10'Font.Color'#7#7'clBlack'#11'Font.Height'#2
|
+'ght'#3#176#0#3'Top'#2'&'#5'Width'#3'+'#2#7'Anchors'#11#5'akTop'#6'akLeft'#7
|
||||||
+#243#9'Font.Name'#6#11'Courier New'#10'Font.Pitch'#7#7'fpFixed'#8'ReadOnly'#9
|
+'akRight'#8'akBottom'#0#17'DefaultItemHeight'#2#18#12'Font.CharSet'#7#12'ANS'
|
||||||
+#8'TabOrder'#2#1#7'Options'#11#17'tvoAutoItemHeight'#16'tvoHideSelection'#21
|
+'I_CHARSET'#10'Font.Color'#7#7'clBlack'#11'Font.Height'#2#243#9'Font.Name'#6
|
||||||
+'tvoKeepCollapsedNodes'#11'tvoReadOnly'#14'tvoShowButtons'#12'tvoShowLines'
|
+#11'Courier New'#10'Font.Pitch'#7#7'fpFixed'#8'ReadOnly'#9#8'TabOrder'#2#1#7
|
||||||
+#11'tvoShowRoot'#17'tvoShowSeparators'#11'tvoToolTips'#0#13'TreeLineColor'#7
|
+'Options'#11#17'tvoAutoItemHeight'#16'tvoHideSelection'#21'tvoKeepCollapsedN'
|
||||||
+#6'clNavy'#0#0#7'TButton'#7'Button1'#4'Left'#3#221#1#6'Height'#2#25#3'Top'#2
|
+'odes'#11'tvoReadOnly'#14'tvoShowButtons'#12'tvoShowLines'#11'tvoShowRoot'#17
|
||||||
+#6#5'Width'#2'['#6'Action'#7#16'actGetRepository'#7'Anchors'#11#5'akTop'#7'a'
|
+'tvoShowSeparators'#11'tvoToolTips'#0#13'TreeLineColor'#7#6'clNavy'#0#0#7'TB'
|
||||||
+'kRight'#0#25'BorderSpacing.InnerBorder'#2#4#8'TabOrder'#2#2#0#0#0#11'TActio'
|
+'utton'#7'Button1'#4'Left'#3#221#1#6'Height'#2#25#3'Top'#2#6#5'Width'#2'['#6
|
||||||
+'nList'#2'AL'#4'left'#2'0'#3'top'#3#128#1#0#7'TAction'#20'actGetRepositoryLi'
|
+'Action'#7#16'actGetRepository'#7'Anchors'#11#5'akTop'#7'akRight'#0#25'Borde'
|
||||||
+'st'#7'Caption'#6#13'Get Rep. List'#9'OnExecute'#7#27'actGetRepositoryListEx'
|
+'rSpacing.InnerBorder'#2#4#8'TabOrder'#2#2#0#0#0#11'TActionList'#2'AL'#4'lef'
|
||||||
+'ecute'#0#0#7'TAction'#16'actGetRepository'#7'Caption'#6#14'Get Repository'#9
|
+'t'#2'H'#3'top'#3#208#1#0#7'TAction'#20'actGetRepositoryList'#7'Caption'#6#13
|
||||||
+'OnExecute'#7#23'actGetRepositoryExecute'#8'OnUpdate'#7#22'actGetRepositoryU'
|
+'Get Rep. List'#9'OnExecute'#7#27'actGetRepositoryListExecute'#0#0#7'TAction'
|
||||||
+'pdate'#0#0#0#0
|
+#16'actGetRepository'#7'Caption'#6#14'Get Repository'#9'OnExecute'#7#23'actG'
|
||||||
|
+'etRepositoryExecute'#8'OnUpdate'#7#22'actGetRepositoryUpdate'#0#0#0#0
|
||||||
]);
|
]);
|
||||||
|
@ -45,6 +45,7 @@ uses base_service_intf, service_intf,
|
|||||||
soap_formatter, binary_formatter,
|
soap_formatter, binary_formatter,
|
||||||
synapse_http_protocol, //indy_http_protocol, ics_http_protocol,
|
synapse_http_protocol, //indy_http_protocol, ics_http_protocol,
|
||||||
//ics_tcp_protocol,
|
//ics_tcp_protocol,
|
||||||
|
library_protocol,
|
||||||
metadata_service_proxy;
|
metadata_service_proxy;
|
||||||
|
|
||||||
{ TfMain }
|
{ TfMain }
|
||||||
@ -93,8 +94,11 @@ begin
|
|||||||
Result := TWSTMetadataService_Proxy.Create(
|
Result := TWSTMetadataService_Proxy.Create(
|
||||||
'WSTMetadataService',
|
'WSTMetadataService',
|
||||||
s,
|
s,
|
||||||
Format('http:Address=%s',[edtAddress.Text])// 'http:Address=http://127.0.0.1:8000/services/IWSTMetadataService'
|
Format('http:Address=%s',[edtAddress.Text])
|
||||||
) as IWSTMetadataService;//'TCP:Address=127.0.0.1;Port=1234;target=Calculator'
|
) as IWSTMetadataService;
|
||||||
|
//lib:FileName=C:\Programmes\lazarus\wst\tests\library\obj\lib_server.dll;target=IWSTMetadataService
|
||||||
|
//'http:Address=http://127.0.0.1:8000/services/IWSTMetadataService'
|
||||||
|
//'TCP:Address=127.0.0.1;Port=1234;target=Calculator'
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TfMain.LoadRepository(ARep: TWSTMtdRepository);
|
procedure TfMain.LoadRepository(ARep: TWSTMtdRepository);
|
||||||
@ -158,6 +162,7 @@ initialization
|
|||||||
|
|
||||||
RegisterStdTypes();
|
RegisterStdTypes();
|
||||||
SYNAPSE_RegisterHTTP_Transport();
|
SYNAPSE_RegisterHTTP_Transport();
|
||||||
|
LIB_Register_Transport();
|
||||||
//ICS_RegisterHTTP_Transport();
|
//ICS_RegisterHTTP_Transport();
|
||||||
//INDY_RegisterHTTP_Transport();
|
//INDY_RegisterHTTP_Transport();
|
||||||
end.
|
end.
|
||||||
|
@ -257,15 +257,27 @@
|
|||||||
<CompilerOptions>
|
<CompilerOptions>
|
||||||
<Version Value="5"/>
|
<Version Value="5"/>
|
||||||
<PathDelim Value="\"/>
|
<PathDelim Value="\"/>
|
||||||
|
<Target>
|
||||||
|
<Filename Value="ws_helper.exe"/>
|
||||||
|
</Target>
|
||||||
<SearchPaths>
|
<SearchPaths>
|
||||||
<OtherUnitFiles Value="..\"/>
|
<OtherUnitFiles Value="..\"/>
|
||||||
<UnitOutputDirectory Value="obj"/>
|
<UnitOutputDirectory Value="obj"/>
|
||||||
</SearchPaths>
|
</SearchPaths>
|
||||||
|
<Parsing>
|
||||||
|
<SyntaxOptions>
|
||||||
|
<IncludeAssertionCode Value="True"/>
|
||||||
|
</SyntaxOptions>
|
||||||
|
</Parsing>
|
||||||
<CodeGeneration>
|
<CodeGeneration>
|
||||||
<Generate Value="Faster"/>
|
<Generate Value="Faster"/>
|
||||||
|
<Optimizations>
|
||||||
|
<OptimizationLevel Value="2"/>
|
||||||
|
</Optimizations>
|
||||||
</CodeGeneration>
|
</CodeGeneration>
|
||||||
<Other>
|
<Other>
|
||||||
<CustomOptions Value="-Xi"/>
|
<CustomOptions Value="-Xi
|
||||||
|
"/>
|
||||||
<CompilerPath Value="$(CompPath)"/>
|
<CompilerPath Value="$(CompPath)"/>
|
||||||
</Other>
|
</Other>
|
||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
|
Reference in New Issue
Block a user