You've already forked lazarus-ccr
Delphi pooling is ok
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@215 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -91,7 +91,7 @@ type
|
||||
|
||||
IItemFactoryEx = interface(IItemFactory)
|
||||
['{66B77926-7E45-4780-8FFB-FB78625EDC1D}']
|
||||
procedure ReleaseInstance(var AInstance);
|
||||
procedure ReleaseInstance(const AInstance : IInterface);
|
||||
function GetPropertyManager(
|
||||
const APropertyGroup : string;
|
||||
const ACreateIfNotExists : Boolean
|
||||
@ -1051,7 +1051,7 @@ type
|
||||
);
|
||||
destructor Destroy();override;
|
||||
function Get(const ATimeOut : Cardinal) : IInterface;
|
||||
procedure Release(var AItem : IInterface);
|
||||
procedure Release(const AItem : IInterface);
|
||||
property Min : PtrInt read FMin;
|
||||
property Max : PtrInt read FMax;
|
||||
end;
|
||||
@ -1074,7 +1074,7 @@ type
|
||||
procedure SetPoolMin(const AValue: PtrInt);
|
||||
protected
|
||||
function CreateInstance():IInterface;override;
|
||||
procedure ReleaseInstance(var AInstance);virtual;
|
||||
procedure ReleaseInstance(const AInstance : IInterface);virtual;
|
||||
function GetPropertyManager(
|
||||
const APropertyGroup : string;
|
||||
const ACreateIfNotExists : Boolean
|
||||
@ -1768,8 +1768,8 @@ begin
|
||||
if ( pt^.Kind = tkEnumeration ) and
|
||||
( GetTypeData(pt)^.BaseType^ = TypeInfo(Boolean) )
|
||||
then begin
|
||||
boolData := Boolean(GetOrdProp(AObject,p^.Name));
|
||||
AStore.Put(propName,pt,boolData);
|
||||
AStore.Get(pt,propName,boolData);
|
||||
SetPropValue(AObject,p^.Name,boolData);
|
||||
end else begin
|
||||
{$ENDIF}
|
||||
FillChar(enumData,SizeOf(enumData),#0);
|
||||
@ -1805,10 +1805,10 @@ begin
|
||||
int64Data := enumData.ULongIntData;
|
||||
End;
|
||||
End;
|
||||
SetOrdProp(AObject,p^.Name,int64Data);
|
||||
{$IFNDEF FPC}
|
||||
end;
|
||||
{$ENDIF}
|
||||
SetOrdProp(AObject,p^.Name,int64Data);
|
||||
End;
|
||||
tkFloat :
|
||||
Begin
|
||||
@ -2146,16 +2146,10 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TSimpleItemFactoryEx.ReleaseInstance(var AInstance);
|
||||
var
|
||||
tmpIntf : IInterface;
|
||||
procedure TSimpleItemFactoryEx.ReleaseInstance(const AInstance : IInterface);
|
||||
begin
|
||||
tmpIntf := IInterface(AInstance);
|
||||
Pointer(AInstance) := nil;
|
||||
if Pooled then begin
|
||||
FPool.Release(tmpIntf);
|
||||
end else begin
|
||||
tmpIntf := nil;
|
||||
FPool.Release(AInstance);
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -4396,14 +4390,14 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TIntfPool.Release(var AItem: IInterface);
|
||||
procedure TIntfPool.Release(const AItem: IInterface);
|
||||
var
|
||||
i : PtrInt;
|
||||
begin
|
||||
for i := 0 to Pred(FList.Count) do begin
|
||||
if ( TIntfPoolItem(FList[i]).Intf = AItem ) then begin
|
||||
TIntfPoolItem(FList[i]).Used := False;
|
||||
AItem := nil;
|
||||
FLock.Release();
|
||||
Break;
|
||||
end;
|
||||
end;
|
||||
@ -4440,7 +4434,6 @@ begin
|
||||
buffer := AStore.ReadBuffer(AName);
|
||||
if ( AObject = nil ) then
|
||||
AObject := Create();
|
||||
writeLn;writeLn(AObject.ClassName);
|
||||
locObj := AObject as TStringBufferRemotable;;
|
||||
locObj.Data := buffer;
|
||||
end;
|
||||
|
@ -158,13 +158,11 @@ type
|
||||
Const ATypeInfo : PTypeInfo;
|
||||
Const AData : TEnumIntType
|
||||
):TDOMNode;
|
||||
{$IFDEF FPC}
|
||||
function PutBool(
|
||||
Const AName : String;
|
||||
Const ATypeInfo : PTypeInfo;
|
||||
Const AData : Boolean
|
||||
):TDOMNode;
|
||||
{$ENDIF}
|
||||
function PutInt64(
|
||||
Const AName : String;
|
||||
Const ATypeInfo : PTypeInfo;
|
||||
@ -192,12 +190,12 @@ type
|
||||
Var AName : String;
|
||||
Var AData : TEnumIntType
|
||||
);
|
||||
{$IFDEF FPC}
|
||||
procedure GetBool(
|
||||
Const ATypeInfo : PTypeInfo;
|
||||
Var AName : String;
|
||||
Var AData : Boolean
|
||||
);
|
||||
{$IFDEF FPC}
|
||||
procedure GetInt(
|
||||
Const ATypeInfo : PTypeInfo;
|
||||
Var AName : String;
|
||||
@ -700,7 +698,6 @@ begin
|
||||
);
|
||||
end;
|
||||
|
||||
{$IFDEF FPC}
|
||||
function TSOAPBaseFormatter.PutBool(
|
||||
const AName : String;
|
||||
const ATypeInfo : PTypeInfo;
|
||||
@ -709,7 +706,6 @@ function TSOAPBaseFormatter.PutBool(
|
||||
begin
|
||||
Result := InternalPutData(AName,ATypeInfo,LowerCase(BoolToStr(AData)));
|
||||
end;
|
||||
{$ENDIF}
|
||||
|
||||
function TSOAPBaseFormatter.PutInt64(
|
||||
const AName : String;
|
||||
@ -808,7 +804,6 @@ begin
|
||||
AData := GetEnumValue(ATypeInfo,locBuffer)
|
||||
End;
|
||||
|
||||
{$IFDEF FPC}
|
||||
procedure TSOAPBaseFormatter.GetBool(
|
||||
const ATypeInfo : PTypeInfo;
|
||||
var AName : String;
|
||||
@ -824,6 +819,7 @@ begin
|
||||
AData := StrToBool(locBuffer);
|
||||
end;
|
||||
|
||||
{$IFDEF FPC}
|
||||
procedure TSOAPBaseFormatter.GetInt(
|
||||
const ATypeInfo: PTypeInfo;
|
||||
var AName: String;
|
||||
@ -1337,7 +1333,7 @@ Var
|
||||
int64Data : Int64;
|
||||
strData : string;
|
||||
objData : TObject;
|
||||
{$IFDEF FPC}boolData : Boolean;{$ENDIF}
|
||||
boolData : Boolean;
|
||||
enumData : TEnumIntType;
|
||||
floatDt : Extended;
|
||||
begin
|
||||
@ -1365,21 +1361,32 @@ begin
|
||||
End;
|
||||
{$ENDIF}
|
||||
tkInteger, tkEnumeration :
|
||||
Begin
|
||||
enumData := 0;
|
||||
Case GetTypeData(ATypeInfo)^.OrdType Of
|
||||
otSByte : enumData := ShortInt(AData);
|
||||
otUByte : enumData := Byte(AData);
|
||||
otSWord : enumData := SmallInt(AData);
|
||||
otUWord : enumData := Word(AData);
|
||||
otSLong,
|
||||
otULong : enumData := LongInt(AData);
|
||||
End;
|
||||
If ( ATypeInfo^.Kind = tkInteger ) Then
|
||||
PutInt64(AName,ATypeInfo,enumData)
|
||||
Else
|
||||
PutEnum(AName,ATypeInfo,enumData);
|
||||
End;
|
||||
begin
|
||||
{$IFNDEF FPC}
|
||||
if ( ATypeInfo^.Kind = tkEnumeration ) and
|
||||
( GetTypeData(ATypeInfo)^.BaseType^ = TypeInfo(Boolean) )
|
||||
then begin
|
||||
boolData := Boolean(AData);
|
||||
PutBool(AName,ATypeInfo,boolData);
|
||||
end else begin
|
||||
{$ENDIF}
|
||||
enumData := 0;
|
||||
Case GetTypeData(ATypeInfo)^.OrdType Of
|
||||
otSByte : enumData := ShortInt(AData);
|
||||
otUByte : enumData := Byte(AData);
|
||||
otSWord : enumData := SmallInt(AData);
|
||||
otUWord : enumData := Word(AData);
|
||||
otSLong,
|
||||
otULong : enumData := LongInt(AData);
|
||||
End;
|
||||
If ( ATypeInfo^.Kind = tkInteger ) Then
|
||||
PutInt64(AName,ATypeInfo,enumData)
|
||||
Else
|
||||
PutEnum(AName,ATypeInfo,enumData);
|
||||
{$IFNDEF FPC}
|
||||
end;
|
||||
{$ENDIF}
|
||||
end;
|
||||
tkFloat :
|
||||
Begin
|
||||
floatDt := 0;
|
||||
@ -1516,7 +1523,7 @@ Var
|
||||
int64Data : Int64;
|
||||
strData : string;
|
||||
objData : TObject;
|
||||
{$IFDEF FPC}boolData : Boolean;{$ENDIF}
|
||||
boolData : Boolean;
|
||||
enumData : TEnumIntType;
|
||||
floatDt : Extended;
|
||||
begin
|
||||
@ -1548,21 +1555,33 @@ begin
|
||||
End;
|
||||
{$ENDIF}
|
||||
tkInteger, tkEnumeration :
|
||||
Begin
|
||||
enumData := 0;
|
||||
If ( ATypeInfo^.Kind = tkInteger ) Then
|
||||
GetInt64(ATypeInfo,AName,enumData)
|
||||
Else
|
||||
GetEnum(ATypeInfo,AName,enumData);
|
||||
Case GetTypeData(ATypeInfo)^.OrdType Of
|
||||
otSByte : ShortInt(AData) := enumData;
|
||||
otUByte : Byte(AData) := enumData;
|
||||
otSWord : SmallInt(AData) := enumData;
|
||||
otUWord : Word(AData) := enumData;
|
||||
otSLong,
|
||||
otULong : LongInt(AData) := enumData;
|
||||
End;
|
||||
End;
|
||||
begin
|
||||
{$IFNDEF FPC}
|
||||
if ( ATypeInfo^.Kind = tkEnumeration ) and
|
||||
( GetTypeData(ATypeInfo)^.BaseType^ = TypeInfo(Boolean) )
|
||||
then begin
|
||||
boolData := False;
|
||||
GetBool(ATypeInfo,AName,boolData);
|
||||
Boolean(AData) := boolData;
|
||||
end else begin
|
||||
{$ENDIF}
|
||||
enumData := 0;
|
||||
If ( ATypeInfo^.Kind = tkInteger ) Then
|
||||
GetInt64(ATypeInfo,AName,enumData)
|
||||
Else
|
||||
GetEnum(ATypeInfo,AName,enumData);
|
||||
Case GetTypeData(ATypeInfo)^.OrdType Of
|
||||
otSByte : ShortInt(AData) := enumData;
|
||||
otUByte : Byte(AData) := enumData;
|
||||
otSWord : SmallInt(AData) := enumData;
|
||||
otUWord : Word(AData) := enumData;
|
||||
otSLong,
|
||||
otULong : LongInt(AData) := enumData;
|
||||
End;
|
||||
{$IFNDEF FPC}
|
||||
end;
|
||||
{$ENDIF}
|
||||
end;
|
||||
tkFloat :
|
||||
Begin
|
||||
floatDt := 0;
|
||||
|
272
wst/trunk/config_objects.pas
Normal file
272
wst/trunk/config_objects.pas
Normal file
@ -0,0 +1,272 @@
|
||||
{
|
||||
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.
|
||||
}
|
||||
|
||||
{$INCLUDE wst_global.inc}
|
||||
unit config_objects;
|
||||
|
||||
interface
|
||||
uses SysUtils, Classes, base_service_intf;
|
||||
|
||||
{$INCLUDE wst.inc}
|
||||
{$INCLUDE wst_delphi.inc}
|
||||
|
||||
type
|
||||
|
||||
TwstConfigItem = class(TBaseComplexRemotable);
|
||||
|
||||
TwstConfigService = class(TwstConfigItem)
|
||||
private
|
||||
FPooled: Boolean;
|
||||
FPoolMax: PtrInt;
|
||||
FPoolMin: PtrInt;
|
||||
FTimeOut: PtrUInt;
|
||||
FName: string;
|
||||
public
|
||||
function GetConfigText() : string;
|
||||
published
|
||||
property Name : string read FName write FName;
|
||||
property PoolMax : PtrInt read FPoolMax write FPoolMax;
|
||||
property PoolMin : PtrInt read FPoolMin write FPoolMin;
|
||||
property Pooled : Boolean read FPooled write FPooled;
|
||||
property TimeOut : PtrUInt read FTimeOut write FTimeOut;
|
||||
end;
|
||||
|
||||
TwstConfigServiceArray = class(TBaseObjectArrayRemotable)
|
||||
private
|
||||
function GetItem(AIndex: Integer): TwstConfigService;
|
||||
public
|
||||
class function GetItemClass():TBaseRemotableClass;override;
|
||||
property Item[AIndex:Integer] : TwstConfigService Read GetItem;Default;
|
||||
end;
|
||||
|
||||
TWstConfigurationObject = class(TBaseComplexRemotable)
|
||||
private
|
||||
FServices: TwstConfigServiceArray;
|
||||
public
|
||||
constructor Create();override;
|
||||
destructor Destroy();override;
|
||||
published
|
||||
property Services : TwstConfigServiceArray read FServices write FServices;
|
||||
end;
|
||||
|
||||
|
||||
{$IFNDEF FPC}
|
||||
function GetAppConfigDir(const AGlobal : Boolean) : string;
|
||||
{$ENDIF}
|
||||
|
||||
function wst_GetConfigFileName():string;
|
||||
function wst_GetConfigObject() : TWstConfigurationObject;
|
||||
function wst_GetServiceConfig(const AName : string) : TwstConfigService ;
|
||||
function wst_GetServiceConfigText(const AName : string) : string ;
|
||||
procedure wst_CreateDefaultFile(ADest : TStream; AConfigObj : TWstConfigurationObject);overload;
|
||||
procedure wst_CreateDefaultFile(const AFileName : string; AConfigObj : TWstConfigurationObject);overload;
|
||||
|
||||
implementation
|
||||
uses
|
||||
base_soap_formatter, server_service_intf,
|
||||
{$IFNDEF FPC}
|
||||
xmldom, wst_delphi_xml
|
||||
{$ELSE}
|
||||
DOM, XmlRead, XmlWrite
|
||||
{$ENDIF};
|
||||
|
||||
const
|
||||
sCONFIG_FILE_NAME = 'wst_config.xml';
|
||||
sAPPLICATION = 'Application';
|
||||
sWST_CONFIG_PATH = 'WST_Configuration';
|
||||
var
|
||||
ConfigurationObjectInstance : TWstConfigurationObject = nil;
|
||||
|
||||
{$IFNDEF FPC}
|
||||
function GetAppConfigDir(const AGlobal : Boolean) : string;
|
||||
begin
|
||||
Result := ExtractFilePath(ParamStr(0));
|
||||
end;
|
||||
{$ENDIF}
|
||||
|
||||
function wst_GetConfigFileName():string;
|
||||
begin
|
||||
Result := IncludeTrailingPathDelimiter(GetAppConfigDir(True)) + sCONFIG_FILE_NAME;
|
||||
end;
|
||||
|
||||
procedure wst_LoadConfigObject(AConfig: TWstConfigurationObject; AStream : TStream);overload;
|
||||
var
|
||||
frmt : IFormatterBase;
|
||||
locPrmName : string;
|
||||
begin
|
||||
frmt := TSOAPBaseFormatter.Create();
|
||||
frmt.LoadFromStream(AStream);
|
||||
frmt.SetSerializationStyle(ssNodeSerialization);
|
||||
locPrmName := sWST_CONFIG_PATH;
|
||||
frmt.Get(TypeInfo(TWstConfigurationObject),locPrmName,AConfig);
|
||||
end;
|
||||
|
||||
procedure wst_LoadConfigObject(AConfig : TWstConfigurationObject; const AFileName : string);overload;
|
||||
var
|
||||
locStream : TMemoryStream;
|
||||
begin
|
||||
if not FileExists(AFileName) then
|
||||
raise Exception.CreateFmt('File not found : "%s".',[AFileName]);
|
||||
locStream := TMemoryStream.Create();
|
||||
try
|
||||
locStream.LoadFromFile(AFileName);
|
||||
locStream.Position := 0;
|
||||
wst_LoadConfigObject(AConfig,locStream);
|
||||
finally
|
||||
FreeAndNil(locStream);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure wst_CreateDefaultFile(ADest : TStream; AConfigObj : TWstConfigurationObject);overload;
|
||||
var
|
||||
locObj : TWstConfigurationObject;
|
||||
c, i : Integer;
|
||||
servReg : IServerServiceRegistry;
|
||||
frmt : IFormatterBase;
|
||||
createdHere : Boolean;
|
||||
begin
|
||||
if ( AConfigObj <> nil ) then
|
||||
locObj := AConfigObj
|
||||
else
|
||||
locObj := TWstConfigurationObject.Create();
|
||||
try
|
||||
createdHere := ( AConfigObj = nil );
|
||||
servReg := GetServerServiceRegistry();
|
||||
c := servReg.GetCount();
|
||||
locObj.Services.SetLength(0);
|
||||
if ( c > 0 ) then begin
|
||||
locObj.Services.SetLength(c);
|
||||
for i := 0 to Pred(c) do begin
|
||||
locObj.Services[i].Name := servReg.GetName(i);
|
||||
end;
|
||||
end;
|
||||
frmt := TSOAPBaseFormatter.Create();
|
||||
frmt.SetSerializationStyle(ssNodeSerialization);
|
||||
frmt.BeginObject(sAPPLICATION,TypeInfo(TWstConfigurationObject));
|
||||
frmt.Put(sWST_CONFIG_PATH,TypeInfo(TWstConfigurationObject),locObj);
|
||||
frmt.EndScope();
|
||||
frmt.SaveToStream(ADest);
|
||||
finally
|
||||
if createdHere then
|
||||
FreeAndNil(locObj);
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure wst_CreateDefaultFile(const AFileName : string; AConfigObj : TWstConfigurationObject);overload;
|
||||
var
|
||||
locStream : TMemoryStream;
|
||||
begin
|
||||
locStream := TMemoryStream.Create();
|
||||
try
|
||||
wst_CreateDefaultFile(locStream,AConfigObj);
|
||||
locStream.SaveToFile(AFileName);
|
||||
finally
|
||||
FreeAndNil(locStream);
|
||||
end;
|
||||
end;
|
||||
|
||||
function wst_GetConfigObject() : TWstConfigurationObject;
|
||||
var
|
||||
locFileName : string;
|
||||
begin
|
||||
if ( ConfigurationObjectInstance = nil ) then begin
|
||||
ConfigurationObjectInstance := TWstConfigurationObject.Create();
|
||||
locFileName := wst_GetConfigFileName();
|
||||
if FileExists(locFileName) then
|
||||
wst_LoadConfigObject(ConfigurationObjectInstance,locFileName)
|
||||
else
|
||||
wst_CreateDefaultFile(locFileName,ConfigurationObjectInstance);
|
||||
end;
|
||||
Result := ConfigurationObjectInstance;
|
||||
end;
|
||||
|
||||
function wst_GetServiceConfig(const AName : string) : TwstConfigService ;
|
||||
var
|
||||
i, c : Integer;
|
||||
servs : TwstConfigServiceArray;
|
||||
begin
|
||||
Result := nil;
|
||||
servs := wst_GetConfigObject().Services;
|
||||
c := servs.Length;
|
||||
for i := 0 to Pred(c) do begin
|
||||
if AnsiSameText(AName,servs[i].Name) then begin
|
||||
Result := servs[i];
|
||||
Break;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
function wst_GetServiceConfigText(const AName : string) : string ;
|
||||
var
|
||||
s : TwstConfigService;
|
||||
begin
|
||||
s := wst_GetServiceConfig(AName);
|
||||
if ( s <> nil ) then
|
||||
Result := s.GetConfigText()
|
||||
else
|
||||
Result := '';
|
||||
end;
|
||||
|
||||
{ TwstConfigServiceArray }
|
||||
|
||||
function TwstConfigServiceArray.GetItem(AIndex: Integer): TwstConfigService;
|
||||
begin
|
||||
Result := Inherited GetItem(AIndex) As TwstConfigService;
|
||||
end;
|
||||
|
||||
class function TwstConfigServiceArray.GetItemClass() : TBaseRemotableClass;
|
||||
begin
|
||||
Result := TwstConfigService;
|
||||
end;
|
||||
|
||||
{ TWstConfigurationObject }
|
||||
|
||||
constructor TWstConfigurationObject.Create;
|
||||
begin
|
||||
inherited;
|
||||
FServices := TwstConfigServiceArray.Create();
|
||||
end;
|
||||
|
||||
destructor TWstConfigurationObject.Destroy;
|
||||
begin
|
||||
FreeAndNil(FServices);
|
||||
inherited;
|
||||
end;
|
||||
|
||||
{ TwstConfigService }
|
||||
|
||||
function TwstConfigService.GetConfigText() : string;
|
||||
begin
|
||||
Result := Format('PoolMin=%d;PoolMax=%d;Pooled=',[PoolMin,PoolMax]);
|
||||
if Pooled then
|
||||
Result := Result + 'True'
|
||||
else
|
||||
Result := Result + 'False';
|
||||
end;
|
||||
|
||||
initialization
|
||||
GetTypeRegistry().Register(sWST_BASE_NS,TypeInfo(TwstConfigService),'Service');
|
||||
GetTypeRegistry().Register(sWST_BASE_NS,TypeInfo(TwstConfigServiceArray),'Services');
|
||||
GetTypeRegistry().Register(sWST_BASE_NS,TypeInfo(TWstConfigurationObject),'WST_Configuration');
|
||||
TwstConfigService.RegisterAttributeProperty('Name');
|
||||
GetTypeRegistry().ItemByTypeInfo[TypeInfo(TwstConfigServiceArray)].RegisterExternalPropertyName('Item','service');
|
||||
|
||||
finalization
|
||||
if ( ConfigurationObjectInstance <> nil ) and
|
||||
( GetServerServiceRegistry.GetCount() <> ConfigurationObjectInstance.Services.Length )
|
||||
then begin
|
||||
wst_CreateDefaultFile(wst_GetConfigFileName(),nil);
|
||||
end;
|
||||
FreeAndNil(ConfigurationObjectInstance);
|
||||
|
||||
end.
|
13
wst/trunk/delphi_init_com.pas
Normal file
13
wst/trunk/delphi_init_com.pas
Normal file
@ -0,0 +1,13 @@
|
||||
unit delphi_init_com;
|
||||
|
||||
interface
|
||||
uses ActiveX;
|
||||
|
||||
implementation
|
||||
|
||||
initialization
|
||||
CoInitialize(nil);
|
||||
|
||||
finalization
|
||||
CoUninitialize();
|
||||
end.
|
@ -49,8 +49,6 @@ type
|
||||
FHTTPServerObject: TIdHTTPServer;
|
||||
FRootAddress : string;
|
||||
private
|
||||
function GenerateWSDLTable():string;
|
||||
|
||||
procedure ProcessWSDLRequest(
|
||||
{$IFDEF INDY_10}
|
||||
AContext : TIdContext;
|
||||
@ -93,18 +91,14 @@ type
|
||||
|
||||
|
||||
implementation
|
||||
uses base_service_intf,
|
||||
server_service_intf, server_service_imputils,
|
||||
server_service_soap, server_binary_formatter, server_service_xmlrpc,
|
||||
metadata_repository, metadata_wsdl,
|
||||
uses
|
||||
{$IFNDEF FPC}
|
||||
ActiveX, XMLDoc,XMLIntf,xmldom, wst_delphi_xml,
|
||||
{$ELSE}
|
||||
DOM, XMLWrite, wst_fpc_xml,
|
||||
ActiveX,
|
||||
{$ENDIF}
|
||||
metadata_service, metadata_service_binder, metadata_service_imp,
|
||||
base_service_intf,
|
||||
server_service_intf, server_service_imputils,
|
||||
metadata_wsdl;
|
||||
|
||||
user_service_intf, user_service_intf_binder, user_service_intf_imp;
|
||||
|
||||
{$IFNDEF FPC}
|
||||
type
|
||||
@ -129,11 +123,6 @@ begin
|
||||
end;
|
||||
{$ENDIF}
|
||||
|
||||
const
|
||||
sSEPARATOR = '/';
|
||||
sSERVICES_PREFIXE = 'services';
|
||||
sWSDL = 'WSDL';
|
||||
|
||||
function ExtractNextPathElement(var AFullPath : string):string;
|
||||
var
|
||||
i : SizeInt;
|
||||
@ -154,78 +143,8 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
function GetWSDL(const ARepName, ARootAddress: shortstring):string;
|
||||
var
|
||||
strm : TMemoryStream;
|
||||
rep : PServiceRepository;
|
||||
doc :TXMLDocument;
|
||||
i : SizeInt;
|
||||
s : string;
|
||||
begin
|
||||
Result := '';
|
||||
rep := nil;
|
||||
doc := Nil;
|
||||
i := GetModuleMetadataMngr().IndexOfName(ARepName);
|
||||
if ( i < 0 ) then
|
||||
Exit;
|
||||
strm := TMemoryStream.Create();
|
||||
try
|
||||
s := GetModuleMetadataMngr().GetRepositoryName(i);
|
||||
GetModuleMetadataMngr().LoadRepositoryName(s,ARootAddress,rep);
|
||||
//if ( GetModuleMetadataMngr().LoadRepositoryName(s,rep) > 0 ) then
|
||||
//rep^.namespace := 'urn:wst';
|
||||
strm.Clear();
|
||||
doc := CreateDoc();
|
||||
GenerateWSDL(rep,doc);
|
||||
WriteXMLFile(doc,strm);
|
||||
i := strm.Size;
|
||||
if ( i > 0 ) then begin
|
||||
SetLength(Result,i);
|
||||
Move(strm.memory^,Result[1],i);
|
||||
end;
|
||||
finally
|
||||
ReleaseDomNode(doc);
|
||||
strm.Free();
|
||||
GetModuleMetadataMngr().ClearRepository(rep);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
{ TwstIndyHttpListener }
|
||||
|
||||
function TwstIndyHttpListener.GenerateWSDLTable(): string;
|
||||
var
|
||||
r : IModuleMetadataMngr;
|
||||
i : Integer;
|
||||
begin
|
||||
r := GetModuleMetadataMngr();
|
||||
Result := '<html>' +
|
||||
'<head>'+
|
||||
'<title>'+
|
||||
'The Web Services Toolkit generated Metadata table'+
|
||||
'</title>'+
|
||||
'<body>' +
|
||||
'<p BGCOLOR="#DDEEFF"><FONT FACE="Arial" COLOR="#0000A0" SIZE="+2">The following repositories has available. Click on the link to view the corresponding WSDL.</FONT></p>'+
|
||||
'<table width="100%">';
|
||||
|
||||
for i := 0 to Pred(r.GetCount()) do begin
|
||||
Result := Result +
|
||||
'<tr>' +
|
||||
'<td align="left">' +
|
||||
Format('<a href="%s">',[sSEPARATOR+sSERVICES_PREFIXE+sSEPARATOR+sWSDL+sSEPARATOR+r.GetRepositoryName(i)])+
|
||||
r.GetRepositoryName(i) +
|
||||
'</a>'+
|
||||
'</td>' +
|
||||
'</tr>';
|
||||
end;
|
||||
Result := Result +
|
||||
|
||||
'</table>'+
|
||||
'</body>'+
|
||||
'</head>'+
|
||||
'</html>';
|
||||
end;
|
||||
|
||||
procedure TwstIndyHttpListener.ProcessWSDLRequest(
|
||||
{$IFDEF INDY_10}
|
||||
AContext : TIdContext;
|
||||
@ -241,7 +160,7 @@ begin
|
||||
locRepName := ExtractNextPathElement(APath);
|
||||
if AnsiSameText(sWSDL,locRepName) then
|
||||
locRepName := ExtractNextPathElement(APath);
|
||||
strBuff := GetWSDL(locRepName,FRootAddress);
|
||||
strBuff := GenerateWSDL(locRepName,FRootAddress);
|
||||
i := Length(strBuff);
|
||||
if ( i > 0 ) then begin
|
||||
AResponseInfo.ContentType := 'text/xml';
|
||||
@ -250,7 +169,7 @@ begin
|
||||
AResponseInfo.ContentStream.Write(strBuff[1],i);
|
||||
Exit;
|
||||
end;
|
||||
AResponseInfo.ContentText := GenerateWSDLTable();
|
||||
AResponseInfo.ContentText := GenerateWSDLHtmlTable();
|
||||
AResponseInfo.ContentType := 'text/html';
|
||||
end;
|
||||
|
||||
@ -395,17 +314,6 @@ begin
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterStdTypes();
|
||||
Server_service_RegisterBinaryFormat();
|
||||
Server_service_RegisterSoapFormat();
|
||||
Server_service_RegisterXmlRpcFormat();
|
||||
|
||||
RegisterUserServiceImplementationFactory();
|
||||
Server_service_RegisterUserServiceService();
|
||||
|
||||
Register_user_service_intf_ServiceMetadata();
|
||||
|
||||
RegisterWSTMetadataServiceImplementationFactory();
|
||||
Server_service_RegisterWSTMetadataServiceService();
|
||||
|
||||
end.
|
||||
|
@ -76,12 +76,18 @@ type
|
||||
);
|
||||
end;
|
||||
|
||||
procedure GenerateWSDL(AMdtdRep : PServiceRepository; ADoc : TXMLDocument);
|
||||
procedure GenerateWSDL(AMdtdRep : PServiceRepository; ADoc : TXMLDocument);overload;
|
||||
function GenerateWSDL(const ARepName, ARootAddress : string):string;overload;
|
||||
|
||||
function GetWsdlTypeHandlerRegistry():IWsdlTypeHandlerRegistry;
|
||||
|
||||
implementation
|
||||
uses {$IFNDEF FPC}wst_delphi_rtti_utils{$ELSE}wst_fpc_xml{$ENDIF};
|
||||
uses
|
||||
{$IFNDEF FPC}
|
||||
wst_delphi_rtti_utils
|
||||
{$ELSE}
|
||||
wst_fpc_xml, XmlWrite
|
||||
{$ENDIF};
|
||||
|
||||
const
|
||||
sWSDL_NS = 'http://schemas.xmlsoap.org/wsdl/';
|
||||
@ -569,6 +575,40 @@ begin
|
||||
|
||||
end;
|
||||
|
||||
function GenerateWSDL(const ARepName, ARootAddress : string):string;overload;
|
||||
var
|
||||
strm : TMemoryStream;
|
||||
rep : PServiceRepository;
|
||||
doc :TXMLDocument;
|
||||
i : SizeInt;
|
||||
s : string;
|
||||
begin
|
||||
Result := '';
|
||||
rep := nil;
|
||||
doc := Nil;
|
||||
i := GetModuleMetadataMngr().IndexOfName(ARepName);
|
||||
if ( i < 0 ) then
|
||||
Exit;
|
||||
strm := TMemoryStream.Create();
|
||||
try
|
||||
s := GetModuleMetadataMngr().GetRepositoryName(i);
|
||||
GetModuleMetadataMngr().LoadRepositoryName(s,ARootAddress,rep);
|
||||
strm.Clear();
|
||||
doc := CreateDoc();
|
||||
GenerateWSDL(rep,doc);
|
||||
WriteXMLFile(doc,strm);
|
||||
i := strm.Size;
|
||||
if ( i > 0 ) then begin
|
||||
SetLength(Result,i);
|
||||
Move(strm.memory^,Result[1],i);
|
||||
end;
|
||||
finally
|
||||
ReleaseDomNode(doc);
|
||||
strm.Free();
|
||||
GetModuleMetadataMngr().ClearRepository(rep);
|
||||
end;
|
||||
end;
|
||||
|
||||
function GetWsdlTypeHandlerRegistry():IWsdlTypeHandlerRegistry;
|
||||
begin
|
||||
Result := WsdlTypeHandlerRegistryInst;
|
||||
|
@ -6,35 +6,44 @@ uses
|
||||
SysUtils,
|
||||
Classes,
|
||||
ActiveX,
|
||||
delphi_init_com in '..\..\..\delphi_init_com.pas',
|
||||
server_service_soap,
|
||||
server_binary_formatter,
|
||||
server_service_xmlrpc,
|
||||
indy_http_server,
|
||||
metadata_service,
|
||||
logger_extension,
|
||||
wst_delphi_rtti_utils in '..\..\..\wst_delphi_rtti_utils.pas',
|
||||
server_listener in '..\..\..\server_listener.pas';
|
||||
server_listener in '..\..\..\server_listener.pas',
|
||||
config_objects in '..\..\..\config_objects.pas',
|
||||
user_service_intf in '..\..\user_service_intf.pas',
|
||||
user_service_intf_binder in '..\..\user_service_intf_binder.pas',
|
||||
user_service_intf_imp in '..\..\user_service_intf_imp.pas',
|
||||
server_service_intf in '..\..\..\server_service_intf.pas';
|
||||
|
||||
var
|
||||
AppObject : TwstIndyHttpListener;
|
||||
begin
|
||||
{$IFNDEF FPC}
|
||||
CoInitialize(nil);
|
||||
Server_service_RegisterBinaryFormat();
|
||||
Server_service_RegisterSoapFormat();
|
||||
Server_service_RegisterXmlRpcFormat();
|
||||
|
||||
RegisterUserServiceImplementationFactory();
|
||||
Server_service_RegisterUserServiceService();
|
||||
|
||||
//wst_CreateDefaultFile(wst_GetConfigFileName(),nil);
|
||||
|
||||
AppObject := TwstIndyHttpListener.Create();
|
||||
try
|
||||
{$ENDIF}
|
||||
AppObject := TwstIndyHttpListener.Create();
|
||||
try
|
||||
WriteLn('"Web Service Toolkit" HTTP Server sample listening at:');
|
||||
WriteLn('');
|
||||
WriteLn('http://127.0.0.1:8000/');
|
||||
WriteLn('');
|
||||
WriteLn('Press enter to quit.');
|
||||
AppObject.Start();
|
||||
ReadLn;
|
||||
finally
|
||||
FreeAndNil(AppObject);
|
||||
end;
|
||||
{$IFNDEF FPC}
|
||||
WriteLn('"Web Service Toolkit" HTTP Server sample listening at:');
|
||||
WriteLn('');
|
||||
WriteLn('http://127.0.0.1:8000/');
|
||||
WriteLn('');
|
||||
WriteLn('Press enter to quit.');
|
||||
AppObject.Start();
|
||||
ReadLn;
|
||||
finally
|
||||
CoUninitialize();
|
||||
FreeAndNil(AppObject);
|
||||
end;
|
||||
{$ENDIF}
|
||||
end.
|
||||
|
||||
|
43
wst/trunk/samples/delphi/library_server/lib_server.cfg
Normal file
43
wst/trunk/samples/delphi/library_server/lib_server.cfg
Normal file
@ -0,0 +1,43 @@
|
||||
-$A8
|
||||
-$B-
|
||||
-$C+
|
||||
-$D+
|
||||
-$E-
|
||||
-$F-
|
||||
-$G+
|
||||
-$H+
|
||||
-$I+
|
||||
-$J-
|
||||
-$K-
|
||||
-$L+
|
||||
-$M-
|
||||
-$N+
|
||||
-$O+
|
||||
-$P+
|
||||
-$Q-
|
||||
-$R-
|
||||
-$S-
|
||||
-$T-
|
||||
-$U-
|
||||
-$V+
|
||||
-$W-
|
||||
-$X+
|
||||
-$YD
|
||||
-$Z1
|
||||
-cg
|
||||
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
-H+
|
||||
-W+
|
||||
-M
|
||||
-$M16384,1048576
|
||||
-K$00400000
|
||||
-N"obj"
|
||||
-LE"c:\program files\borland\delphi7\Projects\Bpl"
|
||||
-LN"c:\program files\borland\delphi7\Projects\Bpl"
|
||||
-U"..\..\;..\..\..\;..\..\..\wst_rtti_filter"
|
||||
-O"..\..\;..\..\..\;..\..\..\wst_rtti_filter"
|
||||
-I"..\..\;..\..\..\;..\..\..\wst_rtti_filter"
|
||||
-R"..\..\;..\..\..\;..\..\..\wst_rtti_filter"
|
||||
-w-UNSAFE_TYPE
|
||||
-w-UNSAFE_CODE
|
||||
-w-UNSAFE_CAST
|
161
wst/trunk/samples/delphi/library_server/lib_server.dof
Normal file
161
wst/trunk/samples/delphi/library_server/lib_server.dof
Normal file
@ -0,0 +1,161 @@
|
||||
[FileVersion]
|
||||
Version=7.0
|
||||
[Compiler]
|
||||
A=8
|
||||
B=0
|
||||
C=1
|
||||
D=1
|
||||
E=0
|
||||
F=0
|
||||
G=1
|
||||
H=1
|
||||
I=1
|
||||
J=0
|
||||
K=0
|
||||
L=1
|
||||
M=0
|
||||
N=1
|
||||
O=1
|
||||
P=1
|
||||
Q=0
|
||||
R=0
|
||||
S=0
|
||||
T=0
|
||||
U=0
|
||||
V=1
|
||||
W=0
|
||||
X=1
|
||||
Y=1
|
||||
Z=1
|
||||
ShowHints=1
|
||||
ShowWarnings=1
|
||||
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
NamespacePrefix=
|
||||
SymbolDeprecated=1
|
||||
SymbolLibrary=1
|
||||
SymbolPlatform=1
|
||||
UnitLibrary=1
|
||||
UnitPlatform=1
|
||||
UnitDeprecated=1
|
||||
HResultCompat=1
|
||||
HidingMember=1
|
||||
HiddenVirtual=1
|
||||
Garbage=1
|
||||
BoundsError=1
|
||||
ZeroNilCompat=1
|
||||
StringConstTruncated=1
|
||||
ForLoopVarVarPar=1
|
||||
TypedConstVarPar=1
|
||||
AsgToTypedConst=1
|
||||
CaseLabelRange=1
|
||||
ForVariable=1
|
||||
ConstructingAbstract=1
|
||||
ComparisonFalse=1
|
||||
ComparisonTrue=1
|
||||
ComparingSignedUnsigned=1
|
||||
CombiningSignedUnsigned=1
|
||||
UnsupportedConstruct=1
|
||||
FileOpen=1
|
||||
FileOpenUnitSrc=1
|
||||
BadGlobalSymbol=1
|
||||
DuplicateConstructorDestructor=1
|
||||
InvalidDirective=1
|
||||
PackageNoLink=1
|
||||
PackageThreadVar=1
|
||||
ImplicitImport=1
|
||||
HPPEMITIgnored=1
|
||||
NoRetVal=1
|
||||
UseBeforeDef=1
|
||||
ForLoopVarUndef=1
|
||||
UnitNameMismatch=1
|
||||
NoCFGFileFound=1
|
||||
MessageDirective=1
|
||||
ImplicitVariants=1
|
||||
UnicodeToLocale=1
|
||||
LocaleToUnicode=1
|
||||
ImagebaseMultiple=1
|
||||
SuspiciousTypecast=1
|
||||
PrivatePropAccessor=1
|
||||
UnsafeType=0
|
||||
UnsafeCode=0
|
||||
UnsafeCast=0
|
||||
[Linker]
|
||||
MapFile=0
|
||||
OutputObjs=0
|
||||
ConsoleApp=1
|
||||
DebugInfo=0
|
||||
RemoteSymbols=0
|
||||
MinStackSize=16384
|
||||
MaxStackSize=1048576
|
||||
ImageBase=4194304
|
||||
ExeDescription=
|
||||
[Directories]
|
||||
OutputDir=
|
||||
UnitOutputDir=obj
|
||||
PackageDLLOutputDir=
|
||||
PackageDCPOutputDir=
|
||||
SearchPath=..\..\;..\..\..\;..\..\..\wst_rtti_filter
|
||||
Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;FIBDBMidas7;Jcl;JclVcl;JvCoreD7R;JvSystemD7R;JvStdCtrlsD7R;JvAppFrmD7R;JvBandsD7R;JvDBD7R;JvDlgsD7R;JvBDED7R;JvCmpD7R;JvCryptD7R;JvCtrlsD7R;JvCustomD7R;JvDockingD7R;JvDotNetCtrlsD7R;JvEDID7R;JvGlobusD7R;JvHMID7R;JvInterpreterD7R;JvJansD7R;JvManagedThreadsD7R;JvMMD7R;JvNetD7R;JvPageCompsD7R;JvPluginD7R;JvPrintPreviewD7R;JvRuntimeDesignD7R;JvTimeFrameworkD7R;JvUIBD7R;JvValidatorsD7R;JvWizardD7R;JvXPCtrlsD7R;dxForumLibD7;cxLibraryVCLD7;cxPageControlVCLD7;dxBarD7;dxComnD7;dxBarDBNavD7;dxBarExtItemsD7;dxBarExtDBItemsD7;dxsbD7;dxmdsD7;dxdbtrD7;dxtrmdD7;dxorgcD7;dxdborD7;dxEdtrD7;EQTLD7;ECQDBCD7;EQDBTLD7;EQGridD7;dxGrEdD7;dxExELD7;dxELibD7;cxEditorsVCLD7;cxGridVCLD7;dxThemeD7;cxDataD7;cxGridUtilsVCLD7;dxPSCoreD7;dxPsPrVwAdvD7;dxPSLnksD7;dxPSTeeChartD7;dxPSDBTeeChartD7;dxPSdxDBTVLnkD7;dxPSdxOCLnkD7;dxPSdxDBOCLnkD7;dxPScxGridLnkD7;dxPSTLLnkD7;qrpt
|
||||
Conditionals=
|
||||
DebugSourceDirs=
|
||||
UsePackages=0
|
||||
[Parameters]
|
||||
RunParams=
|
||||
HostApplication=
|
||||
Launcher=
|
||||
UseLauncher=0
|
||||
DebugCWD=
|
||||
[Language]
|
||||
ActiveLang=
|
||||
ProjectLang=
|
||||
RootDir=C:\Program Files\Borland\Delphi7\Bin\
|
||||
[Version Info]
|
||||
IncludeVerInfo=0
|
||||
AutoIncBuild=0
|
||||
MajorVer=1
|
||||
MinorVer=0
|
||||
Release=0
|
||||
Build=0
|
||||
Debug=0
|
||||
PreRelease=0
|
||||
Special=0
|
||||
Private=0
|
||||
DLL=0
|
||||
Locale=1036
|
||||
CodePage=1252
|
||||
[Version Info Keys]
|
||||
CompanyName=
|
||||
FileDescription=
|
||||
FileVersion=1.0.0.0
|
||||
InternalName=
|
||||
LegalCopyright=
|
||||
LegalTrademarks=
|
||||
OriginalFilename=
|
||||
ProductName=
|
||||
ProductVersion=1.0.0.0
|
||||
Comments=
|
||||
[Excluded Packages]
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxDBTLLnkD7.bpl=ExpressPrinting System ReportLink for ExpressQuantumDBTreeList by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxDBGrLnkD7.bpl=ExpressPrinting System ReportLink for ExpressQuantumGrid by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxInsLnkD7.bpl=ExpressPrinting System ReportLink for ExpressInspector by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxOILnkD7.bpl=ExpressPrinting System ReportLink for ExpressRTTIInspector by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxMVLnkD7.bpl=ExpressPrinting System ReportLink for ExpressMasterView by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxFCLnkD7.bpl=ExpressPrinting System ReportLinks for ExpressFlowChart by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPScxSSLnkD7.bpl=ExpressPrinting System ReportLink for ExpressSpreadSheet by Developer Express Inc.
|
||||
[HistoryLists\hlConditionals]
|
||||
Count=1
|
||||
Item0=INDY_9
|
||||
[HistoryLists\hlUnitAliases]
|
||||
Count=1
|
||||
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
[HistoryLists\hlSearchPath]
|
||||
Count=6
|
||||
Item0=..\..\;..\..\..\;..\..\..\wst_rtti_filter
|
||||
Item1=..\..\;..\..\..\
|
||||
Item2=..\..\..\;..\..\;..\..\..\wst_rtti_filter
|
||||
Item3=..\..\..\;..\..\
|
||||
Item4=..\..\..\
|
||||
Item5=..\
|
||||
[HistoryLists\hlUnitOutputDirectory]
|
||||
Count=1
|
||||
Item0=obj
|
36
wst/trunk/samples/delphi/library_server/lib_server.dpr
Normal file
36
wst/trunk/samples/delphi/library_server/lib_server.dpr
Normal file
@ -0,0 +1,36 @@
|
||||
library lib_server;
|
||||
|
||||
uses
|
||||
SysUtils, Classes,
|
||||
base_service_intf,
|
||||
server_service_intf,
|
||||
server_service_soap,
|
||||
server_binary_formatter,
|
||||
server_service_xmlrpc,
|
||||
metadata_repository,
|
||||
metadata_wsdl,
|
||||
metadata_service,
|
||||
metadata_service_binder,
|
||||
metadata_service_imp,
|
||||
library_base_intf,
|
||||
library_server_intf,
|
||||
user_service_intf_binder,
|
||||
user_service_intf_imp;
|
||||
|
||||
{$R *.res}
|
||||
|
||||
exports
|
||||
wstHandleRequest name WST_LIB_HANDLER;
|
||||
|
||||
begin
|
||||
RegisterStdTypes();
|
||||
Server_service_RegisterBinaryFormat();
|
||||
Server_service_RegisterSoapFormat();
|
||||
Server_service_RegisterXmlRpcFormat();
|
||||
|
||||
RegisterUserServiceImplementationFactory();
|
||||
Server_service_RegisterUserServiceService();
|
||||
|
||||
RegisterWSTMetadataServiceImplementationFactory();
|
||||
Server_service_RegisterWSTMetadataServiceService();
|
||||
end.
|
43
wst/trunk/samples/delphi/tcp_server/tcp_server.cfg
Normal file
43
wst/trunk/samples/delphi/tcp_server/tcp_server.cfg
Normal file
@ -0,0 +1,43 @@
|
||||
-$A8
|
||||
-$B-
|
||||
-$C+
|
||||
-$D+
|
||||
-$E-
|
||||
-$F-
|
||||
-$G+
|
||||
-$H+
|
||||
-$I+
|
||||
-$J-
|
||||
-$K-
|
||||
-$L+
|
||||
-$M-
|
||||
-$N+
|
||||
-$O+
|
||||
-$P+
|
||||
-$Q-
|
||||
-$R-
|
||||
-$S-
|
||||
-$T-
|
||||
-$U-
|
||||
-$V+
|
||||
-$W-
|
||||
-$X+
|
||||
-$YD
|
||||
-$Z1
|
||||
-cg
|
||||
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
-H+
|
||||
-W+
|
||||
-M
|
||||
-$M16384,1048576
|
||||
-K$00400000
|
||||
-N"obj"
|
||||
-LE"c:\program files\borland\delphi7\Projects\Bpl"
|
||||
-LN"c:\program files\borland\delphi7\Projects\Bpl"
|
||||
-U"..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\wst_rtti_filter"
|
||||
-O"..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\wst_rtti_filter"
|
||||
-I"..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\wst_rtti_filter"
|
||||
-R"..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\wst_rtti_filter"
|
||||
-w-UNSAFE_TYPE
|
||||
-w-UNSAFE_CODE
|
||||
-w-UNSAFE_CAST
|
160
wst/trunk/samples/delphi/tcp_server/tcp_server.dof
Normal file
160
wst/trunk/samples/delphi/tcp_server/tcp_server.dof
Normal file
@ -0,0 +1,160 @@
|
||||
[FileVersion]
|
||||
Version=7.0
|
||||
[Compiler]
|
||||
A=8
|
||||
B=0
|
||||
C=1
|
||||
D=1
|
||||
E=0
|
||||
F=0
|
||||
G=1
|
||||
H=1
|
||||
I=1
|
||||
J=0
|
||||
K=0
|
||||
L=1
|
||||
M=0
|
||||
N=1
|
||||
O=1
|
||||
P=1
|
||||
Q=0
|
||||
R=0
|
||||
S=0
|
||||
T=0
|
||||
U=0
|
||||
V=1
|
||||
W=0
|
||||
X=1
|
||||
Y=1
|
||||
Z=1
|
||||
ShowHints=1
|
||||
ShowWarnings=1
|
||||
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
NamespacePrefix=
|
||||
SymbolDeprecated=1
|
||||
SymbolLibrary=1
|
||||
SymbolPlatform=1
|
||||
UnitLibrary=1
|
||||
UnitPlatform=1
|
||||
UnitDeprecated=1
|
||||
HResultCompat=1
|
||||
HidingMember=1
|
||||
HiddenVirtual=1
|
||||
Garbage=1
|
||||
BoundsError=1
|
||||
ZeroNilCompat=1
|
||||
StringConstTruncated=1
|
||||
ForLoopVarVarPar=1
|
||||
TypedConstVarPar=1
|
||||
AsgToTypedConst=1
|
||||
CaseLabelRange=1
|
||||
ForVariable=1
|
||||
ConstructingAbstract=1
|
||||
ComparisonFalse=1
|
||||
ComparisonTrue=1
|
||||
ComparingSignedUnsigned=1
|
||||
CombiningSignedUnsigned=1
|
||||
UnsupportedConstruct=1
|
||||
FileOpen=1
|
||||
FileOpenUnitSrc=1
|
||||
BadGlobalSymbol=1
|
||||
DuplicateConstructorDestructor=1
|
||||
InvalidDirective=1
|
||||
PackageNoLink=1
|
||||
PackageThreadVar=1
|
||||
ImplicitImport=1
|
||||
HPPEMITIgnored=1
|
||||
NoRetVal=1
|
||||
UseBeforeDef=1
|
||||
ForLoopVarUndef=1
|
||||
UnitNameMismatch=1
|
||||
NoCFGFileFound=1
|
||||
MessageDirective=1
|
||||
ImplicitVariants=1
|
||||
UnicodeToLocale=1
|
||||
LocaleToUnicode=1
|
||||
ImagebaseMultiple=1
|
||||
SuspiciousTypecast=1
|
||||
PrivatePropAccessor=1
|
||||
UnsafeType=0
|
||||
UnsafeCode=0
|
||||
UnsafeCast=0
|
||||
[Linker]
|
||||
MapFile=0
|
||||
OutputObjs=0
|
||||
ConsoleApp=1
|
||||
DebugInfo=0
|
||||
RemoteSymbols=0
|
||||
MinStackSize=16384
|
||||
MaxStackSize=1048576
|
||||
ImageBase=4194304
|
||||
ExeDescription=
|
||||
[Directories]
|
||||
OutputDir=
|
||||
UnitOutputDir=obj
|
||||
PackageDLLOutputDir=
|
||||
PackageDCPOutputDir=
|
||||
SearchPath=..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\wst_rtti_filter
|
||||
Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;inetdb;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;Rave50CLX;Rave50VCL;dclOfficeXP;FIBDBMidas7;Jcl;JclVcl;JvCoreD7R;JvSystemD7R;JvStdCtrlsD7R;JvAppFrmD7R;JvBandsD7R;JvDBD7R;JvDlgsD7R;JvBDED7R;JvCmpD7R;JvCryptD7R;JvCtrlsD7R;JvCustomD7R;JvDockingD7R;JvDotNetCtrlsD7R;JvEDID7R;JvGlobusD7R;JvHMID7R;JvInterpreterD7R;JvJansD7R;JvManagedThreadsD7R;JvMMD7R;JvNetD7R;JvPageCompsD7R;JvPluginD7R;JvPrintPreviewD7R;JvRuntimeDesignD7R;JvTimeFrameworkD7R;JvUIBD7R;JvValidatorsD7R;JvWizardD7R;JvXPCtrlsD7R;dxForumLibD7;cxLibraryVCLD7;cxPageControlVCLD7;dxBarD7;dxComnD7;dxBarDBNavD7;dxBarExtItemsD7;dxBarExtDBItemsD7;dxsbD7;dxmdsD7;dxdbtrD7;dxtrmdD7;dxorgcD7;dxdborD7;dxEdtrD7;EQTLD7;ECQDBCD7;EQDBTLD7;EQGridD7;dxGrEdD7;dxExELD7;dxELibD7;cxEditorsVCLD7;cxGridVCLD7;dxThemeD7;cxDataD7;cxGridUtilsVCLD7;dxPSCoreD7;dxPsPrVwAdvD7;dxPSLnksD7;dxPSTeeChartD7;dxPSDBTeeChartD7;dxPSdxDBTVLnkD7;dxPSdxOCLnkD7;dxPSdxDBOCLnkD7;dxPScxGridLnkD7;dxPSTLLnkD7;qrpt
|
||||
Conditionals=
|
||||
DebugSourceDirs=
|
||||
UsePackages=0
|
||||
[Parameters]
|
||||
RunParams=
|
||||
HostApplication=
|
||||
Launcher=
|
||||
UseLauncher=0
|
||||
DebugCWD=
|
||||
[Language]
|
||||
ActiveLang=
|
||||
ProjectLang=
|
||||
RootDir=C:\Program Files\Borland\Delphi7\Bin\
|
||||
[Version Info]
|
||||
IncludeVerInfo=0
|
||||
AutoIncBuild=0
|
||||
MajorVer=1
|
||||
MinorVer=0
|
||||
Release=0
|
||||
Build=0
|
||||
Debug=0
|
||||
PreRelease=0
|
||||
Special=0
|
||||
Private=0
|
||||
DLL=0
|
||||
Locale=1036
|
||||
CodePage=1252
|
||||
[Version Info Keys]
|
||||
CompanyName=
|
||||
FileDescription=
|
||||
FileVersion=1.0.0.0
|
||||
InternalName=
|
||||
LegalCopyright=
|
||||
LegalTrademarks=
|
||||
OriginalFilename=
|
||||
ProductName=
|
||||
ProductVersion=1.0.0.0
|
||||
Comments=
|
||||
[Excluded Packages]
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxDBTLLnkD7.bpl=ExpressPrinting System ReportLink for ExpressQuantumDBTreeList by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxDBGrLnkD7.bpl=ExpressPrinting System ReportLink for ExpressQuantumGrid by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxInsLnkD7.bpl=ExpressPrinting System ReportLink for ExpressInspector by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxOILnkD7.bpl=ExpressPrinting System ReportLink for ExpressRTTIInspector by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxMVLnkD7.bpl=ExpressPrinting System ReportLink for ExpressMasterView by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPSdxFCLnkD7.bpl=ExpressPrinting System ReportLinks for ExpressFlowChart by Developer Express Inc.
|
||||
C:\Program Files\Developer Express Inc\ExpressPrinting System\Delphi 7\Lib\dxPScxSSLnkD7.bpl=ExpressPrinting System ReportLink for ExpressSpreadSheet by Developer Express Inc.
|
||||
[HistoryLists\hlUnitAliases]
|
||||
Count=1
|
||||
Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
||||
[HistoryLists\hlSearchPath]
|
||||
Count=8
|
||||
Item0=..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\wst_rtti_filter
|
||||
Item1=..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\wst_rtti_filter
|
||||
Item2=..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse
|
||||
Item3=..\..\;..\..\..\
|
||||
Item4=$(DELPHI)\Lib\Debug;C:\PROGRA~1\Borland\Delphi7\MyTools\JVCL\3.20\jcl\lib\d7\debug;..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\..\
|
||||
Item5=..\..\;..\..\..\;C:\Program Files\Borland\Delphi7\plate_forme\synapse;..\..\..\..\
|
||||
Item6=..\..\
|
||||
Item7=..\
|
||||
[HistoryLists\hlUnitOutputDirectory]
|
||||
Count=1
|
||||
Item0=obj
|
50
wst/trunk/samples/delphi/tcp_server/tcp_server.dpr
Normal file
50
wst/trunk/samples/delphi/tcp_server/tcp_server.dpr
Normal file
@ -0,0 +1,50 @@
|
||||
program tcp_server;
|
||||
|
||||
{$APPTYPE CONSOLE}
|
||||
|
||||
uses
|
||||
Classes,
|
||||
SysUtils, ActiveX,
|
||||
base_service_intf,
|
||||
server_service_soap,
|
||||
base_binary_formatter,
|
||||
server_binary_formatter,
|
||||
metadata_service,
|
||||
metadata_service_imp,
|
||||
metadata_service_binder,
|
||||
synapse_tcp_server,
|
||||
user_service_intf,
|
||||
user_service_intf_binder,
|
||||
user_service_intf_imp,
|
||||
imp_helper,
|
||||
server_service_xmlrpc;
|
||||
|
||||
{$INCLUDE wst.inc}
|
||||
|
||||
var
|
||||
listnerThread : TServerListnerThread;
|
||||
begin
|
||||
CoInitialize(nil);
|
||||
try
|
||||
SetLogger(TConsoleLogger.Create());
|
||||
|
||||
Server_service_RegisterBinaryFormat();
|
||||
Server_service_RegisterSoapFormat();
|
||||
Server_service_RegisterXmlRpcFormat();
|
||||
|
||||
RegisterWSTMetadataServiceImplementationFactory();
|
||||
//Server_service_RegisterWSTMetadataServiceService();
|
||||
RegisterWSTMetadataServiceImplementationFactory();
|
||||
|
||||
RegisterUserServiceImplementationFactory();
|
||||
Server_service_RegisterUserServiceService();
|
||||
|
||||
Logger().Log('WST sample TCP Server listning on "%s"',[sSERVER_PORT]);
|
||||
Logger().Log('Hit <enter> to stop.');
|
||||
listnerThread := TServerListnerThread.Create();
|
||||
ReadLn;
|
||||
finally
|
||||
CoUninitialize();
|
||||
end;
|
||||
end.
|
||||
|
@ -12,7 +12,7 @@
|
||||
<MainUnit Value="0"/>
|
||||
<IconPath Value="./"/>
|
||||
<TargetFileExt Value=".exe"/>
|
||||
<ActiveEditorIndexAtStart Value="1"/>
|
||||
<ActiveEditorIndexAtStart Value="8"/>
|
||||
</General>
|
||||
<VersionInfo>
|
||||
<ProjectVersion Value=""/>
|
||||
@ -34,15 +34,15 @@
|
||||
<PackageName Value="indylaz"/>
|
||||
</Item1>
|
||||
</RequiredPackages>
|
||||
<Units Count="49">
|
||||
<Units Count="54">
|
||||
<Unit0>
|
||||
<Filename Value="http_server.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="http_server"/>
|
||||
<CursorPos X="33" Y="16"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="14" Y="30"/>
|
||||
<TopLine Value="13"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<UsageCount Value="81"/>
|
||||
<UsageCount Value="103"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
@ -50,24 +50,24 @@
|
||||
<UnitName Value="app_object"/>
|
||||
<CursorPos X="42" Y="214"/>
|
||||
<TopLine Value="200"/>
|
||||
<UsageCount Value="35"/>
|
||||
<UsageCount Value="33"/>
|
||||
</Unit1>
|
||||
<Unit2>
|
||||
<Filename Value="..\..\base_service_intf.pas"/>
|
||||
<UnitName Value="base_service_intf"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="21"/>
|
||||
<UsageCount Value="39"/>
|
||||
<CursorPos X="1" Y="4398"/>
|
||||
<TopLine Value="4387"/>
|
||||
<EditorIndex Value="8"/>
|
||||
<UsageCount Value="49"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit2>
|
||||
<Unit3>
|
||||
<Filename Value="..\..\metadata_wsdl.pas"/>
|
||||
<UnitName Value="metadata_wsdl"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="23"/>
|
||||
<UsageCount Value="40"/>
|
||||
<CursorPos X="80" Y="80"/>
|
||||
<TopLine Value="66"/>
|
||||
<EditorIndex Value="9"/>
|
||||
<UsageCount Value="50"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit3>
|
||||
<Unit4>
|
||||
@ -75,44 +75,43 @@
|
||||
<UnitName Value="metadata_service_imp"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="9"/>
|
||||
<UsageCount Value="24"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="34"/>
|
||||
</Unit4>
|
||||
<Unit5>
|
||||
<Filename Value="..\user_service_intf_imp.pas"/>
|
||||
<UnitName Value="user_service_intf_imp"/>
|
||||
<CursorPos X="22" Y="161"/>
|
||||
<TopLine Value="160"/>
|
||||
<EditorIndex Value="17"/>
|
||||
<UsageCount Value="37"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="6"/>
|
||||
<UsageCount Value="47"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit5>
|
||||
<Unit6>
|
||||
<Filename Value="..\user_service_intf_binder.pas"/>
|
||||
<UnitName Value="user_service_intf_binder"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="5"/>
|
||||
<UsageCount Value="23"/>
|
||||
<CursorPos X="55" Y="16"/>
|
||||
<TopLine Value="14"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<UsageCount Value="33"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit6>
|
||||
<Unit7>
|
||||
<Filename Value="..\user_service_intf.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="user_service_intf"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<CursorPos X="3" Y="119"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="18"/>
|
||||
<UsageCount Value="37"/>
|
||||
<EditorIndex Value="7"/>
|
||||
<UsageCount Value="54"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit7>
|
||||
<Unit8>
|
||||
<Filename Value="..\..\metadata_repository.pas"/>
|
||||
<UnitName Value="metadata_repository"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="26"/>
|
||||
<UsageCount Value="40"/>
|
||||
<TopLine Value="7"/>
|
||||
<EditorIndex Value="12"/>
|
||||
<UsageCount Value="50"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit8>
|
||||
<Unit9>
|
||||
@ -120,207 +119,187 @@
|
||||
<UnitName Value="semaphore"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="22"/>
|
||||
<UsageCount Value="24"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="27"/>
|
||||
</Unit9>
|
||||
<Unit10>
|
||||
<Filename Value="..\..\server_service_intf.pas"/>
|
||||
<UnitName Value="server_service_intf"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="16"/>
|
||||
<UsageCount Value="39"/>
|
||||
<CursorPos X="67" Y="105"/>
|
||||
<TopLine Value="102"/>
|
||||
<EditorIndex Value="5"/>
|
||||
<UsageCount Value="49"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit10>
|
||||
<Unit11>
|
||||
<Filename Value="..\..\server_service_soap.pas"/>
|
||||
<UnitName Value="server_service_soap"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<CursorPos X="17" Y="22"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="13"/>
|
||||
<UsageCount Value="39"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="42"/>
|
||||
</Unit11>
|
||||
<Unit12>
|
||||
<Filename Value="..\..\base_soap_formatter.pas"/>
|
||||
<UnitName Value="base_soap_formatter"/>
|
||||
<CursorPos X="17" Y="28"/>
|
||||
<TopLine Value="13"/>
|
||||
<EditorIndex Value="15"/>
|
||||
<UsageCount Value="39"/>
|
||||
<Loaded Value="True"/>
|
||||
<CursorPos X="36" Y="1576"/>
|
||||
<TopLine Value="1586"/>
|
||||
<UsageCount Value="43"/>
|
||||
</Unit12>
|
||||
<Unit13>
|
||||
<Filename Value="..\..\server_service_imputils.pas"/>
|
||||
<UnitName Value="server_service_imputils"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="20"/>
|
||||
<UsageCount Value="38"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="37"/>
|
||||
</Unit13>
|
||||
<Unit14>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215\others_package\indy\indy-10.2.0.1\fpc\Protocols\IdCustomHTTPServer.pas"/>
|
||||
<UnitName Value="IdCustomHTTPServer"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="6"/>
|
||||
<UsageCount Value="4"/>
|
||||
</Unit14>
|
||||
<Unit15>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\i386\i386.inc"/>
|
||||
<CursorPos X="49" Y="1252"/>
|
||||
<TopLine Value="1231"/>
|
||||
<UsageCount Value="6"/>
|
||||
<UsageCount Value="4"/>
|
||||
</Unit15>
|
||||
<Unit16>
|
||||
<Filename Value="..\..\wst.inc"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="5"/>
|
||||
<UsageCount Value="3"/>
|
||||
</Unit16>
|
||||
<Unit17>
|
||||
<Filename Value="..\..\xmlrpc_formatter.pas"/>
|
||||
<UnitName Value="xmlrpc_formatter"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="28"/>
|
||||
<UsageCount Value="6"/>
|
||||
<UsageCount Value="4"/>
|
||||
</Unit17>
|
||||
<Unit18>
|
||||
<Filename Value="..\..\server_service_xmlrpc.pas"/>
|
||||
<UnitName Value="server_service_xmlrpc"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="8"/>
|
||||
<UsageCount Value="37"/>
|
||||
<Loaded Value="True"/>
|
||||
<CursorPos X="21" Y="22"/>
|
||||
<TopLine Value="7"/>
|
||||
<UsageCount Value="40"/>
|
||||
</Unit18>
|
||||
<Unit19>
|
||||
<Filename Value="..\..\server_binary_formatter.pas"/>
|
||||
<UnitName Value="server_binary_formatter"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="14"/>
|
||||
<UsageCount Value="35"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="38"/>
|
||||
</Unit19>
|
||||
<Unit20>
|
||||
<Filename Value="..\..\base_xmlrpc_formatter.pas"/>
|
||||
<UnitName Value="base_xmlrpc_formatter"/>
|
||||
<CursorPos X="18" Y="21"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="12"/>
|
||||
<UsageCount Value="35"/>
|
||||
<Loaded Value="True"/>
|
||||
<CursorPos X="3" Y="985"/>
|
||||
<TopLine Value="974"/>
|
||||
<UsageCount Value="38"/>
|
||||
</Unit20>
|
||||
<Unit21>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus23_213\others_package\indy\indy-10.2.0.1\fpc\Core\IdSocketHandle.pas"/>
|
||||
<UnitName Value="IdSocketHandle"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="6"/>
|
||||
<UsageCount Value="4"/>
|
||||
</Unit21>
|
||||
<Unit22>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\others_package\indy\indy-10.2.0.1\lazarus\IdAboutVCL.pas"/>
|
||||
<UnitName Value="IdAboutVCL"/>
|
||||
<CursorPos X="19" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="7"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit22>
|
||||
<Unit23>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\others_package\indy\indy-10.2.0.1\fpc\System\IdGlobal.pas"/>
|
||||
<UnitName Value="IdGlobal"/>
|
||||
<CursorPos X="59" Y="982"/>
|
||||
<TopLine Value="981"/>
|
||||
<UsageCount Value="7"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit23>
|
||||
<Unit24>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\systemh.inc"/>
|
||||
<CursorPos X="21" Y="208"/>
|
||||
<TopLine Value="193"/>
|
||||
<EditorIndex Value="25"/>
|
||||
<UsageCount Value="21"/>
|
||||
<EditorIndex Value="11"/>
|
||||
<UsageCount Value="31"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit24>
|
||||
<Unit25>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\innr.inc"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="42"/>
|
||||
<UsageCount Value="7"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit25>
|
||||
<Unit26>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\i386\fastmove.inc"/>
|
||||
<CursorPos X="11" Y="835"/>
|
||||
<TopLine Value="821"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="6"/>
|
||||
</Unit26>
|
||||
<Unit27>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\system.inc"/>
|
||||
<CursorPos X="11" Y="306"/>
|
||||
<TopLine Value="285"/>
|
||||
<EditorIndex Value="6"/>
|
||||
<UsageCount Value="29"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="39"/>
|
||||
</Unit27>
|
||||
<Unit28>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\generic.inc"/>
|
||||
<CursorPos X="5" Y="1289"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="14"/>
|
||||
<UsageCount Value="12"/>
|
||||
</Unit28>
|
||||
<Unit29>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\system.fpd"/>
|
||||
<CursorPos X="22" Y="17"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="7"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit29>
|
||||
<Unit30>
|
||||
<Filename Value="..\..\wst_fpc_xml.pas"/>
|
||||
<UnitName Value="wst_fpc_xml"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<UsageCount Value="28"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="38"/>
|
||||
</Unit30>
|
||||
<Unit31>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\objpas\sysutils\sysstrh.inc"/>
|
||||
<CursorPos X="11" Y="66"/>
|
||||
<TopLine Value="52"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<UsageCount Value="28"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="38"/>
|
||||
</Unit31>
|
||||
<Unit32>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\objpas\sysutils\sysstr.inc"/>
|
||||
<CursorPos X="6" Y="44"/>
|
||||
<TopLine Value="30"/>
|
||||
<UsageCount Value="7"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit32>
|
||||
<Unit33>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\win\sysosh.inc"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="51"/>
|
||||
<UsageCount Value="7"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit33>
|
||||
<Unit34>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\objpash.inc"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="322"/>
|
||||
<UsageCount Value="7"/>
|
||||
<CursorPos X="8" Y="216"/>
|
||||
<TopLine Value="203"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit34>
|
||||
<Unit35>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\varianth.inc"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="7"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit35>
|
||||
<Unit36>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\rtti.inc"/>
|
||||
<CursorPos X="21" Y="77"/>
|
||||
<TopLine Value="5"/>
|
||||
<EditorIndex Value="7"/>
|
||||
<UsageCount Value="28"/>
|
||||
<CursorPos X="36" Y="64"/>
|
||||
<TopLine Value="101"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<UsageCount Value="38"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit36>
|
||||
<Unit37>
|
||||
@ -328,24 +307,20 @@
|
||||
<UnitName Value="metadata_service"/>
|
||||
<CursorPos X="26" Y="13"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="10"/>
|
||||
<UsageCount Value="24"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="34"/>
|
||||
</Unit37>
|
||||
<Unit38>
|
||||
<Filename Value="..\..\wst_rtti_filter\cursor_intf.pas"/>
|
||||
<UnitName Value="cursor_intf"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="11"/>
|
||||
<UsageCount Value="24"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="23"/>
|
||||
</Unit38>
|
||||
<Unit39>
|
||||
<Filename Value="..\user_service_intf.wst"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="6"/>
|
||||
<SyntaxHighlighter Value="None"/>
|
||||
</Unit39>
|
||||
<Unit40>
|
||||
@ -353,15 +328,15 @@
|
||||
<UnitName Value="DOM"/>
|
||||
<CursorPos X="42" Y="228"/>
|
||||
<TopLine Value="215"/>
|
||||
<UsageCount Value="16"/>
|
||||
<UsageCount Value="14"/>
|
||||
</Unit40>
|
||||
<Unit41>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\objpas\typinfo.pp"/>
|
||||
<UnitName Value="typinfo"/>
|
||||
<CursorPos X="46" Y="371"/>
|
||||
<TopLine Value="366"/>
|
||||
<EditorIndex Value="24"/>
|
||||
<UsageCount Value="22"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="115"/>
|
||||
<EditorIndex Value="10"/>
|
||||
<UsageCount Value="32"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit41>
|
||||
<Unit42>
|
||||
@ -369,16 +344,14 @@
|
||||
<UnitName Value="user_service_intf_proxy"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="19"/>
|
||||
<UsageCount Value="21"/>
|
||||
<Loaded Value="True"/>
|
||||
<UsageCount Value="31"/>
|
||||
</Unit42>
|
||||
<Unit43>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\others_package\indy\indy-10.2.0.1\fpc\Protocols\IdCustomHTTPServer.pas"/>
|
||||
<UnitName Value="IdCustomHTTPServer"/>
|
||||
<CursorPos X="14" Y="252"/>
|
||||
<TopLine Value="239"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit43>
|
||||
<Unit44>
|
||||
<Filename Value="..\..\type_lib_edtr\uabout.pas"/>
|
||||
@ -388,7 +361,7 @@
|
||||
<UnitName Value="uabout"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit44>
|
||||
<Unit45>
|
||||
<Filename Value="..\..\type_lib_edtr\uwsttypelibraryedit.pas"/>
|
||||
@ -397,7 +370,7 @@
|
||||
<UnitName Value="uwsttypelibraryedit"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="9"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit45>
|
||||
<Unit46>
|
||||
<Filename Value="..\..\ide\lazarus\wstimportdlg.pas"/>
|
||||
@ -407,77 +380,60 @@
|
||||
<UnitName Value="wstimportdlg"/>
|
||||
<CursorPos X="27" Y="7"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit46>
|
||||
<Unit47>
|
||||
<Filename Value="..\..\indy_http_server.pas"/>
|
||||
<UnitName Value="indy_http_server"/>
|
||||
<CursorPos X="36" Y="205"/>
|
||||
<TopLine Value="197"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<UsageCount Value="14"/>
|
||||
<CursorPos X="1" Y="317"/>
|
||||
<TopLine Value="293"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<UsageCount Value="24"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit47>
|
||||
<Unit48>
|
||||
<Filename Value="..\..\server_listener.pas"/>
|
||||
<UnitName Value="server_listener"/>
|
||||
<CursorPos X="21" Y="15"/>
|
||||
<TopLine Value="12"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<CursorPos X="28" Y="33"/>
|
||||
<TopLine Value="26"/>
|
||||
<UsageCount Value="23"/>
|
||||
</Unit48>
|
||||
<Unit49>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\aliases.inc"/>
|
||||
<CursorPos X="84" Y="14"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="13"/>
|
||||
</Unit49>
|
||||
<Unit50>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\variant.inc"/>
|
||||
<CursorPos X="11" Y="24"/>
|
||||
<TopLine Value="29"/>
|
||||
<UsageCount Value="13"/>
|
||||
</Unit50>
|
||||
<Unit51>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\objpas\sysutils\osutilsh.inc"/>
|
||||
<CursorPos X="53" Y="37"/>
|
||||
<TopLine Value="30"/>
|
||||
<UsageCount Value="16"/>
|
||||
</Unit51>
|
||||
<Unit52>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\win\sysutils.pp"/>
|
||||
<UnitName Value="sysutils"/>
|
||||
<CursorPos X="45" Y="1084"/>
|
||||
<TopLine Value="1076"/>
|
||||
<UsageCount Value="16"/>
|
||||
</Unit52>
|
||||
<Unit53>
|
||||
<Filename Value="..\..\config_objects.pas"/>
|
||||
<UnitName Value="config_objects"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="22"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<UsageCount Value="13"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit48>
|
||||
</Unit53>
|
||||
</Units>
|
||||
<JumpHistory Count="12" HistoryIndex="11">
|
||||
<Position1>
|
||||
<Filename Value="http_server.pas"/>
|
||||
<Caret Line="16" Column="28" TopLine="1"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="http_server.pas"/>
|
||||
<Caret Line="14" Column="19" TopLine="1"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="http_server.pas"/>
|
||||
<Caret Line="23" Column="15" TopLine="1"/>
|
||||
</Position3>
|
||||
<Position4>
|
||||
<Filename Value="..\..\indy_http_server.pas"/>
|
||||
<Caret Line="47" Column="37" TopLine="28"/>
|
||||
</Position4>
|
||||
<Position5>
|
||||
<Filename Value="http_server.pas"/>
|
||||
<Caret Line="10" Column="72" TopLine="1"/>
|
||||
</Position5>
|
||||
<Position6>
|
||||
<Filename Value="http_server.pas"/>
|
||||
<Caret Line="23" Column="23" TopLine="2"/>
|
||||
</Position6>
|
||||
<Position7>
|
||||
<Filename Value="http_server.pas"/>
|
||||
<Caret Line="16" Column="33" TopLine="2"/>
|
||||
</Position7>
|
||||
<Position8>
|
||||
<Filename Value="..\..\indy_http_server.pas"/>
|
||||
<Caret Line="213" Column="17" TopLine="200"/>
|
||||
</Position8>
|
||||
<Position9>
|
||||
<Filename Value="..\..\indy_http_server.pas"/>
|
||||
<Caret Line="219" Column="25" TopLine="207"/>
|
||||
</Position9>
|
||||
<Position10>
|
||||
<Filename Value="..\..\indy_http_server.pas"/>
|
||||
<Caret Line="220" Column="29" TopLine="206"/>
|
||||
</Position10>
|
||||
<Position11>
|
||||
<Filename Value="..\..\indy_http_server.pas"/>
|
||||
<Caret Line="181" Column="19" TopLine="168"/>
|
||||
</Position11>
|
||||
<Position12>
|
||||
<Filename Value="..\..\indy_http_server.pas"/>
|
||||
<Caret Line="221" Column="31" TopLine="206"/>
|
||||
</Position12>
|
||||
</JumpHistory>
|
||||
<JumpHistory Count="0" HistoryIndex="-1"/>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
<Version Value="5"/>
|
||||
@ -489,7 +445,7 @@
|
||||
<IncludeFiles Value="..\..\;$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\Inc\"/>
|
||||
<OtherUnitFiles Value="..\;..\..\;..\..\wst_rtti_filter\"/>
|
||||
<UnitOutputDirectory Value="obj"/>
|
||||
<SrcPath Value="$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\Core\;$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\Protocols\;$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\System\"/>
|
||||
<SrcPath Value="$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\Core\;$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\Protocols\;$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\System\;$(LazarusDir)\others_package\indy\indy-10.2.0.1\fpc\Inc\"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
|
@ -7,12 +7,23 @@ uses
|
||||
cthreads,
|
||||
{$ENDIF}{$ENDIF}
|
||||
Classes, SysUtils,
|
||||
indy_http_server, metadata_service, logger_extension, server_listener;
|
||||
indy_http_server, metadata_service, logger_extension, server_listener,
|
||||
server_service_soap, server_binary_formatter, server_service_xmlrpc, config_objects,
|
||||
user_service_intf, user_service_intf_binder, user_service_intf_imp;
|
||||
|
||||
|
||||
var
|
||||
AppObject : TwstListener;
|
||||
begin
|
||||
Server_service_RegisterBinaryFormat();
|
||||
Server_service_RegisterSoapFormat();
|
||||
Server_service_RegisterXmlRpcFormat();
|
||||
|
||||
RegisterUserServiceImplementationFactory();
|
||||
Server_service_RegisterUserServiceService();
|
||||
|
||||
//wst_CreateDefaultFile(wst_GetConfigFileName(),nil);
|
||||
|
||||
AppObject := TwstIndyHttpListener.Create();
|
||||
try
|
||||
WriteLn('"Web Service Toolkit" HTTP Server sample listening at:');
|
||||
|
@ -12,7 +12,7 @@
|
||||
<MainUnit Value="0"/>
|
||||
<IconPath Value=".\"/>
|
||||
<TargetFileExt Value=".exe"/>
|
||||
<ActiveEditorIndexAtStart Value="12"/>
|
||||
<ActiveEditorIndexAtStart Value="0"/>
|
||||
</General>
|
||||
<VersionInfo>
|
||||
<ProjectVersion Value=""/>
|
||||
@ -30,15 +30,15 @@
|
||||
<LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
|
||||
</local>
|
||||
</RunParams>
|
||||
<Units Count="50">
|
||||
<Units Count="51">
|
||||
<Unit0>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="tcp_server"/>
|
||||
<CursorPos X="1" Y="53"/>
|
||||
<CursorPos X="33" Y="40"/>
|
||||
<TopLine Value="29"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<UsageCount Value="83"/>
|
||||
<UsageCount Value="84"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
@ -77,8 +77,8 @@
|
||||
<Unit6>
|
||||
<Filename Value="..\..\server_service_soap.pas"/>
|
||||
<UnitName Value="server_service_soap"/>
|
||||
<CursorPos X="53" Y="177"/>
|
||||
<TopLine Value="157"/>
|
||||
<CursorPos X="42" Y="32"/>
|
||||
<TopLine Value="16"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<UsageCount Value="29"/>
|
||||
<Loaded Value="True"/>
|
||||
@ -117,8 +117,8 @@
|
||||
<UnitName Value="user_service_intf"/>
|
||||
<CursorPos X="3" Y="27"/>
|
||||
<TopLine Value="5"/>
|
||||
<EditorIndex Value="10"/>
|
||||
<UsageCount Value="83"/>
|
||||
<EditorIndex Value="11"/>
|
||||
<UsageCount Value="84"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit11>
|
||||
<Unit12>
|
||||
@ -126,7 +126,7 @@
|
||||
<UnitName Value="base_service_intf"/>
|
||||
<CursorPos X="15" Y="307"/>
|
||||
<TopLine Value="293"/>
|
||||
<EditorIndex Value="5"/>
|
||||
<EditorIndex Value="6"/>
|
||||
<UsageCount Value="31"/>
|
||||
<Bookmarks Count="1">
|
||||
<Item0 X="19" Y="545" ID="0"/>
|
||||
@ -138,9 +138,7 @@
|
||||
<UnitName Value="std_cursors"/>
|
||||
<CursorPos X="14" Y="21"/>
|
||||
<TopLine Value="7"/>
|
||||
<EditorIndex Value="14"/>
|
||||
<UsageCount Value="36"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit13>
|
||||
<Unit14>
|
||||
<Filename Value="..\..\wst_rtti_filter\cursor_intf.pas"/>
|
||||
@ -154,7 +152,7 @@
|
||||
<UnitName Value="user_service_intf_binder"/>
|
||||
<CursorPos X="48" Y="34"/>
|
||||
<TopLine Value="11"/>
|
||||
<EditorIndex Value="9"/>
|
||||
<EditorIndex Value="10"/>
|
||||
<UsageCount Value="39"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit15>
|
||||
@ -220,7 +218,7 @@
|
||||
<UnitName Value="server_service_intf"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="46"/>
|
||||
<EditorIndex Value="8"/>
|
||||
<EditorIndex Value="9"/>
|
||||
<UsageCount Value="17"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit25>
|
||||
@ -235,7 +233,7 @@
|
||||
<UnitName Value="user_service_intf_imp"/>
|
||||
<CursorPos X="1" Y="56"/>
|
||||
<TopLine Value="40"/>
|
||||
<EditorIndex Value="11"/>
|
||||
<EditorIndex Value="12"/>
|
||||
<UsageCount Value="41"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit27>
|
||||
@ -249,9 +247,11 @@
|
||||
<Unit29>
|
||||
<Filename Value="..\..\base_soap_formatter.pas"/>
|
||||
<UnitName Value="base_soap_formatter"/>
|
||||
<CursorPos X="65" Y="313"/>
|
||||
<TopLine Value="304"/>
|
||||
<UsageCount Value="8"/>
|
||||
<CursorPos X="24" Y="967"/>
|
||||
<TopLine Value="941"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<UsageCount Value="10"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit29>
|
||||
<Unit30>
|
||||
<Filename Value="..\..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\objpas\typinfo.pp"/>
|
||||
@ -273,7 +273,7 @@
|
||||
<UnitName Value="imp_helper"/>
|
||||
<CursorPos X="1" Y="44"/>
|
||||
<TopLine Value="32"/>
|
||||
<UsageCount Value="52"/>
|
||||
<UsageCount Value="53"/>
|
||||
</Unit32>
|
||||
<Unit33>
|
||||
<Filename Value="..\..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\objpas\classes\persist.inc"/>
|
||||
@ -297,9 +297,9 @@
|
||||
<Unit36>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<UnitName Value="synapse_tcp_server"/>
|
||||
<CursorPos X="3" Y="325"/>
|
||||
<TopLine Value="309"/>
|
||||
<EditorIndex Value="6"/>
|
||||
<CursorPos X="40" Y="92"/>
|
||||
<TopLine Value="67"/>
|
||||
<EditorIndex Value="7"/>
|
||||
<UsageCount Value="19"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit36>
|
||||
@ -335,9 +335,7 @@
|
||||
<UnitName Value="blcksock"/>
|
||||
<CursorPos X="1" Y="2407"/>
|
||||
<TopLine Value="2393"/>
|
||||
<EditorIndex Value="13"/>
|
||||
<UsageCount Value="13"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit41>
|
||||
<Unit42>
|
||||
<Filename Value="..\..\server_service_xmlrpc.pas"/>
|
||||
@ -345,8 +343,8 @@
|
||||
<UnitName Value="server_service_xmlrpc"/>
|
||||
<CursorPos X="1" Y="83"/>
|
||||
<TopLine Value="69"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<UsageCount Value="34"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<UsageCount Value="35"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit42>
|
||||
<Unit43>
|
||||
@ -354,7 +352,7 @@
|
||||
<UnitName Value="base_xmlrpc_formatter"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<EditorIndex Value="5"/>
|
||||
<UsageCount Value="16"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit43>
|
||||
@ -381,8 +379,8 @@
|
||||
<Filename Value="..\..\server_listener.pas"/>
|
||||
<UnitName Value="server_listener"/>
|
||||
<CursorPos X="3" Y="28"/>
|
||||
<TopLine Value="14"/>
|
||||
<EditorIndex Value="7"/>
|
||||
<TopLine Value="21"/>
|
||||
<EditorIndex Value="8"/>
|
||||
<UsageCount Value="11"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit47>
|
||||
@ -397,132 +395,29 @@
|
||||
<UnitName Value="blcksock"/>
|
||||
<CursorPos X="1" Y="2407"/>
|
||||
<TopLine Value="2393"/>
|
||||
<EditorIndex Value="12"/>
|
||||
<UsageCount Value="10"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit49>
|
||||
<Unit50>
|
||||
<Filename Value="..\..\..\..\..\..\lazarus_23_215XX\fpc\source\packages\base\winunits\comobj.pp"/>
|
||||
<UnitName Value="comobj"/>
|
||||
<CursorPos X="14" Y="97"/>
|
||||
<TopLine Value="114"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit50>
|
||||
</Units>
|
||||
<JumpHistory Count="30" HistoryIndex="29">
|
||||
<JumpHistory Count="3" HistoryIndex="2">
|
||||
<Position1>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="302" Column="5" TopLine="270"/>
|
||||
<Caret Line="92" Column="40" TopLine="81"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="308" Column="5" TopLine="276"/>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="40" Column="33" TopLine="29"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="287" Column="54" TopLine="267"/>
|
||||
<Filename Value="..\..\server_service_soap.pas"/>
|
||||
<Caret Line="32" Column="42" TopLine="16"/>
|
||||
</Position3>
|
||||
<Position4>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="75" Column="1" TopLine="62"/>
|
||||
</Position4>
|
||||
<Position5>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="79" Column="1" TopLine="76"/>
|
||||
</Position5>
|
||||
<Position6>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="46" Column="17" TopLine="32"/>
|
||||
</Position6>
|
||||
<Position7>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="205" Column="104" TopLine="191"/>
|
||||
</Position7>
|
||||
<Position8>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="254" Column="35" TopLine="240"/>
|
||||
</Position8>
|
||||
<Position9>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="61" Column="24" TopLine="47"/>
|
||||
</Position9>
|
||||
<Position10>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="226" Column="19" TopLine="221"/>
|
||||
</Position10>
|
||||
<Position11>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="256" Column="56" TopLine="242"/>
|
||||
</Position11>
|
||||
<Position12>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="263" Column="1" TopLine="247"/>
|
||||
</Position12>
|
||||
<Position13>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="30" Column="17" TopLine="15"/>
|
||||
</Position13>
|
||||
<Position14>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="39" Column="1" TopLine="25"/>
|
||||
</Position14>
|
||||
<Position15>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="51" Column="11" TopLine="28"/>
|
||||
</Position15>
|
||||
<Position16>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="30" Column="26" TopLine="28"/>
|
||||
</Position16>
|
||||
<Position17>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="52" Column="31" TopLine="28"/>
|
||||
</Position17>
|
||||
<Position18>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="300" Column="1" TopLine="266"/>
|
||||
</Position18>
|
||||
<Position19>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="81" Column="41" TopLine="63"/>
|
||||
</Position19>
|
||||
<Position20>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="52" Column="40" TopLine="28"/>
|
||||
</Position20>
|
||||
<Position21>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="81" Column="50" TopLine="65"/>
|
||||
</Position21>
|
||||
<Position22>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="52" Column="40" TopLine="28"/>
|
||||
</Position22>
|
||||
<Position23>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="53" Column="16" TopLine="29"/>
|
||||
</Position23>
|
||||
<Position24>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="315" Column="5" TopLine="283"/>
|
||||
</Position24>
|
||||
<Position25>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="37" Column="19" TopLine="29"/>
|
||||
</Position25>
|
||||
<Position26>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="52" Column="21" TopLine="29"/>
|
||||
</Position26>
|
||||
<Position27>
|
||||
<Filename Value="..\..\synapse_tcp_server.pas"/>
|
||||
<Caret Line="267" Column="24" TopLine="247"/>
|
||||
</Position27>
|
||||
<Position28>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="52" Column="27" TopLine="29"/>
|
||||
</Position28>
|
||||
<Position29>
|
||||
<Filename Value="tcp_server.pas"/>
|
||||
<Caret Line="53" Column="1" TopLine="29"/>
|
||||
</Position29>
|
||||
<Position30>
|
||||
<Filename Value="..\user_service_intf_imp.pas"/>
|
||||
<Caret Line="56" Column="1" TopLine="40"/>
|
||||
</Position30>
|
||||
</JumpHistory>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
|
@ -2,7 +2,7 @@
|
||||
This unit has been produced by ws_helper.
|
||||
Input unit name : "user_service_intf".
|
||||
This unit name : "user_service_intf_binder".
|
||||
Date : "13/07/2007 21:34:10".
|
||||
Date : "16/07/2007 19:01:46".
|
||||
}
|
||||
unit user_service_intf_binder;
|
||||
{$IFDEF FPC} {$mode objfpc}{$H+} {$ENDIF}
|
||||
@ -284,10 +284,10 @@ End;
|
||||
|
||||
initialization
|
||||
|
||||
{$IF DECLARED(Register_user_service_intf_NameSpace)}
|
||||
Register_user_service_intf_NameSpace();
|
||||
{$IFEND}
|
||||
|
||||
{$i user_service_intf.wst}
|
||||
|
||||
{$IF DECLARED(Register_user_service_intf_ServiceMetadata)}
|
||||
Register_user_service_intf_ServiceMetadata();
|
||||
{$IFEND}
|
||||
|
||||
End.
|
||||
|
@ -18,7 +18,11 @@ Type
|
||||
|
||||
{ TUserService_ServiceImp }
|
||||
|
||||
TUserService_ServiceImp=class(TBaseServiceImplementation,UserService)
|
||||
TUserService_ServiceImp=class(TActivableServiceImplementation,UserService)
|
||||
protected
|
||||
procedure Activate();override;
|
||||
procedure Deactivate();override;
|
||||
function CanBePooled() : Boolean;override;
|
||||
Protected
|
||||
function GetList():TUserArray;
|
||||
procedure Add(
|
||||
@ -33,6 +37,9 @@ Type
|
||||
function Delete(
|
||||
Const AName : string
|
||||
):boolean;
|
||||
public
|
||||
constructor Create();override;
|
||||
destructor Destroy();override;
|
||||
End;
|
||||
|
||||
const sDATA_FILE_NAME = 'sample.data';
|
||||
@ -41,7 +48,7 @@ Type
|
||||
procedure SaveDataToFile(const AFileName : string);
|
||||
|
||||
Implementation
|
||||
uses Contnrs, std_cursors, rtti_filters, imp_helper;
|
||||
uses Contnrs, std_cursors, rtti_filters, imp_helper, config_objects;
|
||||
|
||||
var
|
||||
FUserList : TObjectList = nil;
|
||||
@ -67,9 +74,6 @@ end;
|
||||
|
||||
{ TUserService_ServiceImp implementation }
|
||||
function TUserService_ServiceImp.GetList():TUserArray;
|
||||
var
|
||||
locCrs : IObjectCursor;
|
||||
srcUsr, locUsr : TUser;
|
||||
Begin
|
||||
Result := TUserArray.Create();
|
||||
try
|
||||
@ -135,7 +139,7 @@ End;
|
||||
|
||||
procedure RegisterUserServiceImplementationFactory();
|
||||
Begin
|
||||
GetServiceImplementationRegistry().Register('UserService',TImplementationFactory.Create(TUserService_ServiceImp) as IServiceImplementationFactory);
|
||||
GetServiceImplementationRegistry().Register('UserService',TImplementationFactory.Create(TUserService_ServiceImp,wst_GetServiceConfigText('UserService')) as IServiceImplementationFactory);
|
||||
End;
|
||||
|
||||
procedure FillSampleData();
|
||||
@ -186,6 +190,35 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
constructor TUserService_ServiceImp.Create;
|
||||
begin
|
||||
inherited;
|
||||
WriteLn('TUserService_ServiceImp.Create();');
|
||||
end;
|
||||
|
||||
procedure TUserService_ServiceImp.Activate;
|
||||
begin
|
||||
inherited;
|
||||
WriteLn(Format('TUserService_ServiceImp.Activate(), Self = %p',[Pointer(Self)]));
|
||||
end;
|
||||
|
||||
function TUserService_ServiceImp.CanBePooled: Boolean;
|
||||
begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
procedure TUserService_ServiceImp.Deactivate;
|
||||
begin
|
||||
WriteLn(Format('TUserService_ServiceImp.Deactivate(), Self = %p',[Pointer(Self)]));
|
||||
inherited;
|
||||
end;
|
||||
|
||||
destructor TUserService_ServiceImp.Destroy;
|
||||
begin
|
||||
WriteLn('TUserService_ServiceImp.Destroy();');
|
||||
inherited;
|
||||
end;
|
||||
|
||||
initialization
|
||||
FUserList := TObjectList.Create(True);
|
||||
FUserCursor := TObjectListCursor.Create(FUserList);
|
||||
|
@ -21,6 +21,11 @@ uses
|
||||
{$INCLUDE wst.inc}
|
||||
{$INCLUDE wst_delphi.inc}
|
||||
|
||||
const
|
||||
sSEPARATOR = '/';
|
||||
sSERVICES_PREFIXE = 'services';
|
||||
sWSDL = 'WSDL';
|
||||
|
||||
type
|
||||
|
||||
TListnerNotifyMessage = procedure(Sender : TObject; const AMsg : string) of object;
|
||||
@ -36,8 +41,45 @@ type
|
||||
property OnNotifyMessage : TListnerNotifyMessage read FOnNotifyMessage write FOnNotifyMessage;
|
||||
end;
|
||||
|
||||
function GenerateWSDLHtmlTable(): string;
|
||||
|
||||
implementation
|
||||
uses base_service_intf, metadata_repository,
|
||||
metadata_service, metadata_service_binder, metadata_service_imp ;
|
||||
|
||||
|
||||
function GenerateWSDLHtmlTable(): string;
|
||||
var
|
||||
r : IModuleMetadataMngr;
|
||||
i : Integer;
|
||||
begin
|
||||
r := GetModuleMetadataMngr();
|
||||
Result := '<html>' +
|
||||
'<head>'+
|
||||
'<title>'+
|
||||
'The Web Services Toolkit generated Metadata table'+
|
||||
'</title>'+
|
||||
'<body>' +
|
||||
'<p BGCOLOR="#DDEEFF"><FONT FACE="Arial" COLOR="#0000A0" SIZE="+2">The following repositories has available. Click on the link to view the corresponding WSDL.</FONT></p>'+
|
||||
'<table width="100%">';
|
||||
|
||||
for i := 0 to Pred(r.GetCount()) do begin
|
||||
Result := Result +
|
||||
'<tr>' +
|
||||
'<td align="left">' +
|
||||
Format('<a href="%s">',[sSEPARATOR+sSERVICES_PREFIXE+sSEPARATOR+sWSDL+sSEPARATOR+r.GetRepositoryName(i)])+
|
||||
r.GetRepositoryName(i) +
|
||||
'</a>'+
|
||||
'</td>' +
|
||||
'</tr>';
|
||||
end;
|
||||
Result := Result +
|
||||
|
||||
'</table>'+
|
||||
'</body>'+
|
||||
'</head>'+
|
||||
'</html>';
|
||||
end;
|
||||
|
||||
{ TwstListener }
|
||||
|
||||
@ -52,4 +94,9 @@ begin
|
||||
FOnNotifyMessage(Self,AMsg);
|
||||
end;
|
||||
|
||||
initialization
|
||||
RegisterStdTypes();
|
||||
RegisterWSTMetadataServiceImplementationFactory();
|
||||
Server_service_RegisterWSTMetadataServiceService();
|
||||
|
||||
end.
|
||||
|
@ -82,14 +82,16 @@ Type
|
||||
);
|
||||
end;
|
||||
|
||||
IServerServiceRegistry = Interface
|
||||
IServerServiceRegistry = interface
|
||||
['{83E7BBEB-A33D-4A3E-896D-D351C2819009}']
|
||||
function Find(const AServiceName : string):IServerService;
|
||||
procedure Register(
|
||||
const AServiceName : string;
|
||||
AFactory : IItemFactory
|
||||
);
|
||||
End;
|
||||
function GetCount() : Integer;
|
||||
function GetName(const AIndex : Integer) : string;
|
||||
end;
|
||||
|
||||
IServiceImplementationFactory = interface(IItemFactoryEx)
|
||||
['{23A745BC-5F63-404D-BF53-55A6E64DE5BE}']
|
||||
@ -277,7 +279,9 @@ type
|
||||
TServerServiceRegistry = class(TBaseFactoryRegistry,IServerServiceRegistry)
|
||||
protected
|
||||
function Find(const AServiceName : string):IServerService;
|
||||
End;
|
||||
function GetCount() : Integer;
|
||||
function GetName(const AIndex : Integer) : string;
|
||||
end;
|
||||
|
||||
{ TBaseFormatterRegistryItem }
|
||||
|
||||
@ -390,6 +394,16 @@ Type
|
||||
property VerbHandler : TServiceVerbMethod Read FVerbHandler;
|
||||
End;
|
||||
|
||||
function TServerServiceRegistry.GetCount: Integer;
|
||||
begin
|
||||
Result := Count;
|
||||
end;
|
||||
|
||||
function TServerServiceRegistry.GetName(const AIndex: Integer): string;
|
||||
begin
|
||||
Result := Item[AIndex].Name;
|
||||
end;
|
||||
|
||||
{ TServiceVerbItem }
|
||||
|
||||
constructor TServiceVerbItem.Create(
|
||||
|
@ -177,7 +177,7 @@ begin
|
||||
AssertNotNull('params pointer',po^.Params);
|
||||
pop := po^.Params;
|
||||
AssertEquals('param name','result',pop^.Name);
|
||||
AssertEquals('param type name','int',pop^.TypeName);
|
||||
AssertEquals('param type name','integer',pop^.TypeName);
|
||||
AssertEquals('param modifier',ord(argOut),ord(pop^.Modifier));
|
||||
|
||||
rp^.NameSpace := 'http://test_name_space/';
|
||||
|
@ -7,7 +7,7 @@
|
||||
<MainUnit Value="0"/>
|
||||
<IconPath Value="./"/>
|
||||
<TargetFileExt Value=".exe"/>
|
||||
<ActiveEditorIndexAtStart Value="13"/>
|
||||
<ActiveEditorIndexAtStart Value="14"/>
|
||||
</General>
|
||||
<PublishOptions>
|
||||
<Version Value="2"/>
|
||||
@ -141,16 +141,18 @@
|
||||
<Filename Value="testmetadata_unit.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="testmetadata_unit"/>
|
||||
<CursorPos X="44" Y="180"/>
|
||||
<TopLine Value="153"/>
|
||||
<CursorPos X="48" Y="180"/>
|
||||
<TopLine Value="158"/>
|
||||
<EditorIndex Value="14"/>
|
||||
<UsageCount Value="202"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit11>
|
||||
<Unit12>
|
||||
<Filename Value="..\..\ws_helper\metadata_generator.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="metadata_generator"/>
|
||||
<CursorPos X="1" Y="19"/>
|
||||
<TopLine Value="1"/>
|
||||
<TopLine Value="67"/>
|
||||
<EditorIndex Value="10"/>
|
||||
<UsageCount Value="202"/>
|
||||
<Loaded Value="True"/>
|
||||
@ -285,7 +287,7 @@
|
||||
<UnitName Value="test_parserdef"/>
|
||||
<CursorPos X="93" Y="76"/>
|
||||
<TopLine Value="11"/>
|
||||
<UsageCount Value="144"/>
|
||||
<UsageCount Value="145"/>
|
||||
</Unit30>
|
||||
<Unit31>
|
||||
<Filename Value="..\..\..\..\..\lazarusClean\fpc\2.0.4\source\rtl\inc\objpash.inc"/>
|
||||
@ -328,7 +330,7 @@
|
||||
<CursorPos X="26" Y="13"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="7"/>
|
||||
<UsageCount Value="82"/>
|
||||
<UsageCount Value="83"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit36>
|
||||
<Unit37>
|
||||
@ -454,7 +456,7 @@
|
||||
<CursorPos X="8" Y="38"/>
|
||||
<TopLine Value="11"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<UsageCount Value="28"/>
|
||||
<UsageCount Value="29"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit54>
|
||||
<Unit55>
|
||||
|
@ -7,7 +7,7 @@
|
||||
<MainUnit Value="0"/>
|
||||
<IconPath Value="./"/>
|
||||
<TargetFileExt Value=".exe"/>
|
||||
<ActiveEditorIndexAtStart Value="0"/>
|
||||
<ActiveEditorIndexAtStart Value="2"/>
|
||||
</General>
|
||||
<VersionInfo>
|
||||
<ProjectVersion Value=""/>
|
||||
@ -36,10 +36,10 @@
|
||||
<Unit0>
|
||||
<Filename Value="typ_lib_edtr.lpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<CursorPos X="20" Y="5"/>
|
||||
<CursorPos X="1" Y="20"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
@ -49,10 +49,10 @@
|
||||
<IsPartOfProject Value="True"/>
|
||||
<ResourceFilename Value="uwsttypelibraryedit.lrs"/>
|
||||
<UnitName Value="uwsttypelibraryedit"/>
|
||||
<CursorPos X="19" Y="552"/>
|
||||
<CursorPos X="40" Y="546"/>
|
||||
<TopLine Value="535"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit1>
|
||||
<Unit2>
|
||||
@ -60,7 +60,7 @@
|
||||
<UnitName Value="parserdefs"/>
|
||||
<CursorPos X="1" Y="35"/>
|
||||
<TopLine Value="22"/>
|
||||
<UsageCount Value="43"/>
|
||||
<UsageCount Value="42"/>
|
||||
</Unit2>
|
||||
<Unit3>
|
||||
<Filename Value="..\ws_helper\wsdl2pas_imp.pas"/>
|
||||
@ -68,7 +68,7 @@
|
||||
<CursorPos X="38" Y="805"/>
|
||||
<TopLine Value="792"/>
|
||||
<EditorIndex Value="9"/>
|
||||
<UsageCount Value="80"/>
|
||||
<UsageCount Value="83"/>
|
||||
<Bookmarks Count="1">
|
||||
<Item0 X="65" Y="750" ID="2"/>
|
||||
</Bookmarks>
|
||||
@ -81,7 +81,7 @@
|
||||
<CursorPos X="45" Y="707"/>
|
||||
<TopLine Value="684"/>
|
||||
<EditorIndex Value="13"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Bookmarks Count="1">
|
||||
<Item0 X="49" Y="446" ID="1"/>
|
||||
</Bookmarks>
|
||||
@ -96,7 +96,7 @@
|
||||
<UnitName Value="uabout"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
</Unit5>
|
||||
<Unit6>
|
||||
<Filename Value="ufenumedit.pas"/>
|
||||
@ -108,7 +108,7 @@
|
||||
<CursorPos X="27" Y="78"/>
|
||||
<TopLine Value="58"/>
|
||||
<EditorIndex Value="10"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit6>
|
||||
<Unit7>
|
||||
@ -118,7 +118,7 @@
|
||||
<CursorPos X="1" Y="241"/>
|
||||
<TopLine Value="234"/>
|
||||
<EditorIndex Value="8"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit7>
|
||||
<Unit8>
|
||||
@ -127,7 +127,7 @@
|
||||
<UnitName Value="source_utils"/>
|
||||
<CursorPos X="18" Y="20"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
</Unit8>
|
||||
<Unit9>
|
||||
<Filename Value="edit_helper.pas"/>
|
||||
@ -136,7 +136,7 @@
|
||||
<CursorPos X="15" Y="491"/>
|
||||
<TopLine Value="484"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit9>
|
||||
<Unit10>
|
||||
@ -149,7 +149,7 @@
|
||||
<CursorPos X="1" Y="307"/>
|
||||
<TopLine Value="294"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit10>
|
||||
<Unit11>
|
||||
@ -161,7 +161,7 @@
|
||||
<CursorPos X="33" Y="106"/>
|
||||
<TopLine Value="92"/>
|
||||
<EditorIndex Value="5"/>
|
||||
<UsageCount Value="191"/>
|
||||
<UsageCount Value="198"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit11>
|
||||
<Unit12>
|
||||
@ -169,7 +169,7 @@
|
||||
<UnitName Value="ComCtrls"/>
|
||||
<CursorPos X="15" Y="1781"/>
|
||||
<TopLine Value="1768"/>
|
||||
<UsageCount Value="2"/>
|
||||
<UsageCount Value="1"/>
|
||||
</Unit12>
|
||||
<Unit13>
|
||||
<Filename Value="..\ws_helper\parserutils.pas"/>
|
||||
@ -177,83 +177,83 @@
|
||||
<CursorPos X="17" Y="20"/>
|
||||
<TopLine Value="19"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<UsageCount Value="67"/>
|
||||
<UsageCount Value="70"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit13>
|
||||
<Unit14>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\i386\i386.inc"/>
|
||||
<CursorPos X="2" Y="1284"/>
|
||||
<TopLine Value="1263"/>
|
||||
<UsageCount Value="9"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit14>
|
||||
<Unit15>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\inc\except.inc"/>
|
||||
<CursorPos X="1" Y="223"/>
|
||||
<TopLine Value="209"/>
|
||||
<UsageCount Value="9"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit15>
|
||||
<Unit16>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\inc\objpas.inc"/>
|
||||
<CursorPos X="1" Y="152"/>
|
||||
<TopLine Value="138"/>
|
||||
<UsageCount Value="11"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit16>
|
||||
<Unit17>
|
||||
<Filename Value="ufclassedit.lrs"/>
|
||||
<CursorPos X="39" Y="2"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="2"/>
|
||||
<UsageCount Value="1"/>
|
||||
</Unit17>
|
||||
<Unit18>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\inc\wstrings.inc"/>
|
||||
<CursorPos X="1" Y="317"/>
|
||||
<TopLine Value="303"/>
|
||||
<UsageCount Value="2"/>
|
||||
<UsageCount Value="1"/>
|
||||
</Unit18>
|
||||
<Unit19>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\packages\fcl-xml\src\dom.pp"/>
|
||||
<UnitName Value="DOM"/>
|
||||
<CursorPos X="3" Y="2064"/>
|
||||
<TopLine Value="2041"/>
|
||||
<UsageCount Value="2"/>
|
||||
<UsageCount Value="1"/>
|
||||
</Unit19>
|
||||
<Unit20>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\lcl\stdctrls.pp"/>
|
||||
<UnitName Value="StdCtrls"/>
|
||||
<CursorPos X="24" Y="362"/>
|
||||
<TopLine Value="348"/>
|
||||
<UsageCount Value="1"/>
|
||||
<UsageCount Value="0"/>
|
||||
</Unit20>
|
||||
<Unit21>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\objpas\classes\classesh.inc"/>
|
||||
<CursorPos X="12" Y="64"/>
|
||||
<TopLine Value="49"/>
|
||||
<UsageCount Value="1"/>
|
||||
<UsageCount Value="0"/>
|
||||
</Unit21>
|
||||
<Unit22>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\objpas\classes\stringl.inc"/>
|
||||
<CursorPos X="15" Y="1071"/>
|
||||
<TopLine Value="1056"/>
|
||||
<UsageCount Value="1"/>
|
||||
<UsageCount Value="0"/>
|
||||
</Unit22>
|
||||
<Unit23>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\objpas\types.pp"/>
|
||||
<UnitName Value="types"/>
|
||||
<CursorPos X="6" Y="15"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="1"/>
|
||||
<UsageCount Value="0"/>
|
||||
</Unit23>
|
||||
<Unit24>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\objpas\sysutils\sysstrh.inc"/>
|
||||
<CursorPos X="10" Y="104"/>
|
||||
<TopLine Value="90"/>
|
||||
<UsageCount Value="1"/>
|
||||
<UsageCount Value="0"/>
|
||||
</Unit24>
|
||||
<Unit25>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\fpc\2.1.3\source\rtl\objpas\sysutils\sysstr.inc"/>
|
||||
<CursorPos X="1" Y="689"/>
|
||||
<TopLine Value="686"/>
|
||||
<UsageCount Value="1"/>
|
||||
<UsageCount Value="0"/>
|
||||
</Unit25>
|
||||
<Unit26>
|
||||
<Filename Value="uinterfaceedit.pas"/>
|
||||
@ -263,13 +263,13 @@
|
||||
<UnitName Value="uinterfaceedit"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="155"/>
|
||||
<UsageCount Value="162"/>
|
||||
</Unit26>
|
||||
<Unit27>
|
||||
<Filename Value="uinterfaceedit.lfm"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="1"/>
|
||||
<UsageCount Value="0"/>
|
||||
<SyntaxHighlighter Value="LFM"/>
|
||||
</Unit27>
|
||||
<Unit28>
|
||||
@ -280,13 +280,13 @@
|
||||
<UnitName Value="udm"/>
|
||||
<CursorPos X="15" Y="2"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="150"/>
|
||||
<UsageCount Value="157"/>
|
||||
</Unit28>
|
||||
<Unit29>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\lcl\include\treeview.inc"/>
|
||||
<CursorPos X="25" Y="68"/>
|
||||
<TopLine Value="61"/>
|
||||
<UsageCount Value="6"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit29>
|
||||
<Unit30>
|
||||
<Filename Value="..\ws_helper\pascal_parser_intf.pas"/>
|
||||
@ -295,7 +295,7 @@
|
||||
<CursorPos X="24" Y="13"/>
|
||||
<TopLine Value="1"/>
|
||||
<EditorIndex Value="12"/>
|
||||
<UsageCount Value="113"/>
|
||||
<UsageCount Value="120"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit30>
|
||||
<Unit31>
|
||||
@ -304,14 +304,14 @@
|
||||
<UnitName Value="PParser"/>
|
||||
<CursorPos X="4" Y="2133"/>
|
||||
<TopLine Value="2127"/>
|
||||
<UsageCount Value="113"/>
|
||||
<UsageCount Value="120"/>
|
||||
</Unit31>
|
||||
<Unit32>
|
||||
<Filename Value="..\ws_helper\logger_intf.pas"/>
|
||||
<UnitName Value="logger_intf"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="37"/>
|
||||
<UsageCount Value="37"/>
|
||||
<UsageCount Value="36"/>
|
||||
</Unit32>
|
||||
<Unit33>
|
||||
<Filename Value="..\ws_helper\pastree.pp"/>
|
||||
@ -319,40 +319,41 @@
|
||||
<UnitName Value="PasTree"/>
|
||||
<CursorPos X="33" Y="332"/>
|
||||
<TopLine Value="315"/>
|
||||
<UsageCount Value="113"/>
|
||||
<UsageCount Value="120"/>
|
||||
</Unit33>
|
||||
<Unit34>
|
||||
<Filename Value="..\..\..\..\lazarus_23_215\lcl\include\treeview.inc"/>
|
||||
<CursorPos X="35" Y="71"/>
|
||||
<TopLine Value="58"/>
|
||||
<UsageCount Value="5"/>
|
||||
<UsageCount Value="4"/>
|
||||
</Unit34>
|
||||
<Unit35>
|
||||
<Filename Value="..\..\..\..\lazarus23_213\lcl\include\customcheckbox.inc"/>
|
||||
<CursorPos X="1" Y="120"/>
|
||||
<TopLine Value="108"/>
|
||||
<UsageCount Value="6"/>
|
||||
<UsageCount Value="5"/>
|
||||
</Unit35>
|
||||
<Unit36>
|
||||
<Filename Value="umain.lrs"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit36>
|
||||
<Unit37>
|
||||
<Filename Value="..\wst_rtti_filter\rtti_filters.pas"/>
|
||||
<UnitName Value="rtti_filters"/>
|
||||
<CursorPos X="1" Y="236"/>
|
||||
<TopLine Value="219"/>
|
||||
<UsageCount Value="27"/>
|
||||
<UsageCount Value="26"/>
|
||||
</Unit37>
|
||||
<Unit38>
|
||||
<Filename Value="..\ws_helper\generator.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="generator"/>
|
||||
<CursorPos X="2" Y="16"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="223" Y="1327"/>
|
||||
<TopLine Value="1318"/>
|
||||
<EditorIndex Value="7"/>
|
||||
<UsageCount Value="30"/>
|
||||
<UsageCount Value="37"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit38>
|
||||
<Unit39>
|
||||
@ -360,49 +361,49 @@
|
||||
<UnitName Value="dom_cursors"/>
|
||||
<CursorPos X="1" Y="239"/>
|
||||
<TopLine Value="222"/>
|
||||
<UsageCount Value="24"/>
|
||||
<UsageCount Value="23"/>
|
||||
</Unit39>
|
||||
<Unit40>
|
||||
<Filename Value="..\ws_helper\command_line_parser.pas"/>
|
||||
<UnitName Value="command_line_parser"/>
|
||||
<CursorPos X="20" Y="31"/>
|
||||
<TopLine Value="17"/>
|
||||
<UsageCount Value="22"/>
|
||||
<UsageCount Value="21"/>
|
||||
</Unit40>
|
||||
<Unit41>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215\lcl\forms.pp"/>
|
||||
<UnitName Value="Forms"/>
|
||||
<CursorPos X="44" Y="10"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit41>
|
||||
<Unit42>
|
||||
<Filename Value="..\ws_helper\pscanner.pp"/>
|
||||
<UnitName Value="PScanner"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="322"/>
|
||||
<UsageCount Value="11"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit42>
|
||||
<Unit43>
|
||||
<Filename Value="..\ws_helper\metadata_generator.pas"/>
|
||||
<UnitName Value="metadata_generator"/>
|
||||
<CursorPos X="11" Y="20"/>
|
||||
<TopLine Value="14"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit43>
|
||||
<Unit44>
|
||||
<Filename Value="..\ide\lazarus\wst_register.pas"/>
|
||||
<UnitName Value="wst_register"/>
|
||||
<CursorPos X="42" Y="6"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="12"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit44>
|
||||
<Unit45>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215\ideintf\menuintf.pas"/>
|
||||
<UnitName Value="MenuIntf"/>
|
||||
<CursorPos X="53" Y="417"/>
|
||||
<TopLine Value="409"/>
|
||||
<UsageCount Value="9"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit45>
|
||||
<Unit46>
|
||||
<Filename Value="..\ide\lazarus\wstimportdlg.pas"/>
|
||||
@ -411,28 +412,28 @@
|
||||
<UnitName Value="wstimportdlg"/>
|
||||
<CursorPos X="29" Y="60"/>
|
||||
<TopLine Value="154"/>
|
||||
<UsageCount Value="12"/>
|
||||
<UsageCount Value="11"/>
|
||||
</Unit46>
|
||||
<Unit47>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215\ideintf\lazideintf.pas"/>
|
||||
<UnitName Value="LazIDEIntf"/>
|
||||
<CursorPos X="33" Y="174"/>
|
||||
<TopLine Value="162"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit47>
|
||||
<Unit48>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215\ideintf\projectintf.pas"/>
|
||||
<UnitName Value="ProjectIntf"/>
|
||||
<CursorPos X="3" Y="284"/>
|
||||
<TopLine Value="262"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit48>
|
||||
<Unit49>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215\ideintf\idecommands.pas"/>
|
||||
<UnitName Value="IDECommands"/>
|
||||
<CursorPos X="47" Y="291"/>
|
||||
<TopLine Value="279"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit49>
|
||||
<Unit50>
|
||||
<Filename Value="uprocedit.pas"/>
|
||||
@ -442,14 +443,14 @@
|
||||
<UnitName Value="uprocedit"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="69"/>
|
||||
<UsageCount Value="76"/>
|
||||
</Unit50>
|
||||
<Unit51>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\lcl\comctrls.pp"/>
|
||||
<UnitName Value="ComCtrls"/>
|
||||
<CursorPos X="4" Y="1660"/>
|
||||
<TopLine Value="1660"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit51>
|
||||
<Unit52>
|
||||
<Filename Value="common_gui_utils.pas"/>
|
||||
@ -457,14 +458,14 @@
|
||||
<UnitName Value="common_gui_utils"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="67"/>
|
||||
<UsageCount Value="74"/>
|
||||
</Unit52>
|
||||
<Unit53>
|
||||
<Filename Value="..\..\..\..\..\DOCUME~1\ADMINI~1\LOCALS~1\Temp\DestBug.pas"/>
|
||||
<UnitName Value="DestBug"/>
|
||||
<CursorPos X="1" Y="1"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="8"/>
|
||||
<UsageCount Value="7"/>
|
||||
</Unit53>
|
||||
<Unit54>
|
||||
<Filename Value="uargedit.pas"/>
|
||||
@ -474,20 +475,20 @@
|
||||
<UnitName Value="uargedit"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="60"/>
|
||||
<UsageCount Value="67"/>
|
||||
</Unit54>
|
||||
<Unit55>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\lcl\interfaces\win32\win32wscontrols.pp"/>
|
||||
<UnitName Value="Win32WSControls"/>
|
||||
<CursorPos X="1" Y="226"/>
|
||||
<TopLine Value="212"/>
|
||||
<UsageCount Value="9"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit55>
|
||||
<Unit56>
|
||||
<Filename Value="umain.lfm"/>
|
||||
<CursorPos X="19" Y="1822"/>
|
||||
<TopLine Value="1858"/>
|
||||
<UsageCount Value="9"/>
|
||||
<UsageCount Value="8"/>
|
||||
<SyntaxHighlighter Value="LFM"/>
|
||||
</Unit56>
|
||||
<Unit57>
|
||||
@ -498,14 +499,14 @@
|
||||
<UnitName Value="umoduleedit"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="52"/>
|
||||
<UsageCount Value="59"/>
|
||||
</Unit57>
|
||||
<Unit58>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\lcl\stdctrls.pp"/>
|
||||
<UnitName Value="StdCtrls"/>
|
||||
<CursorPos X="3" Y="1020"/>
|
||||
<TopLine Value="1006"/>
|
||||
<UsageCount Value="9"/>
|
||||
<UsageCount Value="8"/>
|
||||
</Unit58>
|
||||
<Unit59>
|
||||
<Filename Value="ubindingedit.pas"/>
|
||||
@ -515,38 +516,38 @@
|
||||
<UnitName Value="ubindingedit"/>
|
||||
<CursorPos X="2" Y="12"/>
|
||||
<TopLine Value="1"/>
|
||||
<UsageCount Value="42"/>
|
||||
<UsageCount Value="49"/>
|
||||
</Unit59>
|
||||
<Unit60>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\objpash.inc"/>
|
||||
<CursorPos X="26" Y="158"/>
|
||||
<TopLine Value="135"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit60>
|
||||
<Unit61>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\inc\objpas.inc"/>
|
||||
<CursorPos X="11" Y="550"/>
|
||||
<TopLine Value="645"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit61>
|
||||
<Unit62>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\objpas\classes\classesh.inc"/>
|
||||
<CursorPos X="14" Y="248"/>
|
||||
<TopLine Value="226"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit62>
|
||||
<Unit63>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\fpc\source\rtl\objpas\classes\lists.inc"/>
|
||||
<CursorPos X="3" Y="408"/>
|
||||
<TopLine Value="406"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit63>
|
||||
<Unit64>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\fpc\source\packages\fcl-base\src\inc\contnrs.pp"/>
|
||||
<UnitName Value="contnrs"/>
|
||||
<CursorPos X="3" Y="701"/>
|
||||
<TopLine Value="698"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit64>
|
||||
<Unit65>
|
||||
<Filename Value="ufrmsaveoption.pas"/>
|
||||
@ -556,21 +557,21 @@
|
||||
<UnitName Value="ufrmsaveoption"/>
|
||||
<CursorPos X="42" Y="64"/>
|
||||
<TopLine Value="42"/>
|
||||
<UsageCount Value="38"/>
|
||||
<UsageCount Value="45"/>
|
||||
</Unit65>
|
||||
<Unit66>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\lcl\dialogs.pp"/>
|
||||
<UnitName Value="Dialogs"/>
|
||||
<CursorPos X="3" Y="44"/>
|
||||
<TopLine Value="27"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit66>
|
||||
<Unit67>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\fpc\source\packages\fcl-xml\src\dom.pp"/>
|
||||
<UnitName Value="DOM"/>
|
||||
<CursorPos X="3" Y="1459"/>
|
||||
<TopLine Value="1455"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit67>
|
||||
<Unit68>
|
||||
<Filename Value="..\wst_rtti_filter\cursor_intf.pas"/>
|
||||
@ -578,20 +579,20 @@
|
||||
<CursorPos X="2" Y="90"/>
|
||||
<TopLine Value="71"/>
|
||||
<EditorIndex Value="11"/>
|
||||
<UsageCount Value="13"/>
|
||||
<UsageCount Value="16"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit68>
|
||||
<Unit69>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\lcl\include\control.inc"/>
|
||||
<CursorPos X="1" Y="2403"/>
|
||||
<TopLine Value="2390"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit69>
|
||||
<Unit70>
|
||||
<Filename Value="..\..\..\..\..\lazarus_23_215XX\lcl\include\customform.inc"/>
|
||||
<CursorPos X="1" Y="1417"/>
|
||||
<TopLine Value="1398"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="9"/>
|
||||
</Unit70>
|
||||
<Unit71>
|
||||
<Filename Value="ufarrayedit.pas"/>
|
||||
@ -602,15 +603,43 @@
|
||||
<CursorPos X="67" Y="117"/>
|
||||
<TopLine Value="95"/>
|
||||
<EditorIndex Value="6"/>
|
||||
<UsageCount Value="22"/>
|
||||
<UsageCount Value="29"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit71>
|
||||
</Units>
|
||||
<JumpHistory Count="1" HistoryIndex="0">
|
||||
<JumpHistory Count="8" HistoryIndex="7">
|
||||
<Position1>
|
||||
<Filename Value="typ_lib_edtr.lpr"/>
|
||||
<Caret Line="17" Column="43" TopLine="1"/>
|
||||
<Filename Value="..\ws_helper\generator.pas"/>
|
||||
<Caret Line="699" Column="64" TopLine="684"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="..\ws_helper\generator.pas"/>
|
||||
<Caret Line="1" Column="1" TopLine="1"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="..\ws_helper\generator.pas"/>
|
||||
<Caret Line="692" Column="27" TopLine="684"/>
|
||||
</Position3>
|
||||
<Position4>
|
||||
<Filename Value="..\ws_helper\generator.pas"/>
|
||||
<Caret Line="1" Column="1" TopLine="1"/>
|
||||
</Position4>
|
||||
<Position5>
|
||||
<Filename Value="typ_lib_edtr.lpr"/>
|
||||
<Caret Line="5" Column="20" TopLine="1"/>
|
||||
</Position5>
|
||||
<Position6>
|
||||
<Filename Value="typ_lib_edtr.lpr"/>
|
||||
<Caret Line="15" Column="14" TopLine="1"/>
|
||||
</Position6>
|
||||
<Position7>
|
||||
<Filename Value="typ_lib_edtr.lpr"/>
|
||||
<Caret Line="14" Column="68" TopLine="1"/>
|
||||
</Position7>
|
||||
<Position8>
|
||||
<Filename Value="typ_lib_edtr.lpr"/>
|
||||
<Caret Line="20" Column="1" TopLine="1"/>
|
||||
</Position8>
|
||||
</JumpHistory>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
|
@ -11,7 +11,7 @@ uses
|
||||
, uwsttypelibraryedit, view_helper, source_utils, uabout, ufEnumedit,
|
||||
edit_helper, ufclassedit, wsdl_generator, ufpropedit, uinterfaceedit, udm,
|
||||
pascal_parser_intf, PasTree, PParser, uprocedit, common_gui_utils, uargedit,
|
||||
umoduleedit, ubindingedit, ufrmsaveoption, ufarrayedit;
|
||||
umoduleedit, ubindingedit, ufrmsaveoption, ufarrayedit, generator;
|
||||
|
||||
begin
|
||||
Application.Initialize;
|
||||
|
@ -688,13 +688,13 @@ begin
|
||||
NewLine();
|
||||
WriteLn('initialization');
|
||||
NewLine();
|
||||
s := Format('Register_%s_NameSpace',[SymbolTable.CurrentModule.Name]);
|
||||
WriteLn(' {$i %s.%s}',[SymbolTable.CurrentModule.Name,sWST_EXTENSION]);
|
||||
NewLine();
|
||||
s := Format('Register_%s_ServiceMetadata',[SymbolTable.CurrentModule.Name]);
|
||||
WriteLn(' {$IF DECLARED(%s)}',[s]);
|
||||
WriteLn(' %s();',[s]);
|
||||
WriteLn(' {$IFEND}');
|
||||
NewLine();
|
||||
WriteLn(' {$i %s.%s}',[SymbolTable.CurrentModule.Name,sWST_EXTENSION]);
|
||||
NewLine();
|
||||
WriteLn('End.');
|
||||
end;
|
||||
|
||||
@ -1142,6 +1142,7 @@ begin
|
||||
SetCurrentStream(FImpStream);
|
||||
WriteLn('');
|
||||
WriteLn('Implementation');
|
||||
WriteLn('uses config_objects;');
|
||||
end;
|
||||
|
||||
procedure TImplementationGenerator.GenerateUnitImplementationFooter();
|
||||
@ -1323,7 +1324,7 @@ var
|
||||
WriteLn('procedure Register%sImplementationFactory();',[strBuff]);
|
||||
WriteLn('Begin');
|
||||
IncIndent();
|
||||
WriteLn('GetServiceImplementationRegistry().Register(%s,TImplementationFactory.Create(%s) as IServiceImplementationFactory);',[QuotedStr(AIntf.Name),strClassName]);
|
||||
WriteLn('GetServiceImplementationRegistry().Register(%s,TImplementationFactory.Create(%s,wst_GetServiceConfigText(%s)) as IServiceImplementationFactory);',[QuotedStr(AIntf.Name),strClassName,QuotedStr(AIntf.Name)]);
|
||||
DecIndent();
|
||||
WriteLn('End;');
|
||||
EndAutoIndent();
|
||||
|
@ -2,7 +2,7 @@
|
||||
type
|
||||
QWord = type Int64;
|
||||
DWORD = LongWord;
|
||||
PtrInt = Cardinal;
|
||||
PtrInt = Integer;
|
||||
PByteArray = ^ByteArray;
|
||||
ByteArray = array[0..$effffff] of Byte;
|
||||
PtrUInt = Cardinal;
|
||||
|
@ -97,7 +97,6 @@ end;
|
||||
|
||||
function NodeToBuffer(ANode : TDOMNode):string ;
|
||||
var
|
||||
locStream : TStringStream;
|
||||
locNodeEx : IDOMNodeEx;
|
||||
begin
|
||||
if Supports(ANode,IDOMNodeEx,locNodeEx) then begin
|
||||
|
Reference in New Issue
Block a user