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.