Componentes.Terceros.RemObj.../internal/5.0.24.615/1/RemObjects SDK for Delphi/Source/uRODiscovery_Async.pas

90 lines
3.1 KiB
ObjectPascal

unit uRODiscovery_Async;
{----------------------------------------------------------------------------}
{ This unit was automatically generated by the RemObjects SDK after reading }
{ the RODL file associated with this project . }
{ }
{ Do not modify this unit manually, or your changes will be lost when this }
{ unit is regenerated the next time you compile the project. }
{----------------------------------------------------------------------------}
{$I RemObjects.inc}
interface
uses
{vcl:} Classes, TypInfo,
{RemObjects:} uROClient, uROTypes, uROClientIntf, uROAsync,
{Project:} uRODiscovery_Intf;
type
{ IRODiscoveryService_Async }
IRODiscoveryService_Async = interface(IROAsyncInterface)
['{8E88E437-8B20-4AF4-8C81-DF27E6A6413D}']
procedure Invoke_FindService(const iName: String; const ioServerOptions: TRODiscoveryOptions);
function Retrieve_FindService(out ioServerOptions: TRODiscoveryOptions): String;
end;
{ CoIRODiscoveryService_Async }
CoIRODiscoveryService_Async = class
class function Create(const aMessage : IROMessage; aTransportChannel : IROTransportChannel) : IRODiscoveryService_Async;
end;
TIRODiscoveryService_AsyncProxy = class(TROAsyncProxy, IRODiscoveryService_Async)
private
protected
function __GetInterfaceName: String; override;
procedure Invoke_FindService(const iName: String; const ioServerOptions: TRODiscoveryOptions);
function Retrieve_FindService(out ioServerOptions: TRODiscoveryOptions): String;
end;
implementation
uses
{vcl:} SysUtils;
{ CoIRODiscoveryService }
class function CoIRODiscoveryService_Async.Create(const aMessage : IROMessage; aTransportChannel : IROTransportChannel) : IRODiscoveryService_Async;
begin
result := TIRODiscoveryService_AsyncProxy.Create(aMessage, aTransportChannel);
end;
{ TIRODiscoveryService_Proxy }
function TIRODiscoveryService_AsyncProxy.__GetInterfaceName: String;
begin
result := 'IRODiscoveryService';
end;
procedure TIRODiscoveryService_AsyncProxy.Invoke_FindService(const iName: String; const ioServerOptions: TRODiscoveryOptions);
var __request:TStream;
begin
__AssertProxyNotBusy('FindService');
__request := TMemoryStream.Create;
__Message.InitializeRequestMessage(__TransportChannel, 'RODiscovery', 'IRODiscoveryService', 'FindService');
__Message.Write('iName', TypeInfo(String), iName, []);
__Message.Write('ioServerOptions', TypeInfo(TRODiscoveryOptions), ioServerOptions, []);
__Message.Finalize;
__Message.WriteToStream(__request);
__DispatchAsyncRequest('FindService',__request);
end;
function TIRODiscoveryService_AsyncProxy.Retrieve_FindService(out ioServerOptions: TRODiscoveryOptions): String;
var __response:TStream;
begin
__response := __RetrieveAsyncResponse('FindService');
__Message.ReadFromStream(__response);
__Message.Read('Result', TypeInfo(String), Result, []);
__Message.Read('ioServerOptions', TypeInfo(TRODiscoveryOptions), ioServerOptions, []);
__response.Free();
end;
initialization
end.