unit ProxyServerMainLibrary_Invk; {----------------------------------------------------------------------------} { 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. } {----------------------------------------------------------------------------} interface uses {vcl:} Classes, {RemObjects:} uROServer, uROServerIntf, uROTypes, uROClientIntf, {Generated:} ProxyServerMainLibrary_Intf; type TProxyServerMainService_Invoker = class(TROInvoker) private protected published procedure Invoke_Sum(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_GetServerTime(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); procedure Invoke_EchoStruct(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); end; implementation uses {RemObjects:} uRORes, uROClient; { TProxyServerMainService_Invoker } procedure TProxyServerMainService_Invoker.Invoke_Sum(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); { function Sum(const A: Integer; const B: Integer): Integer; } var A: Integer; B: Integer; lResult: Integer; begin try __Message.Read('A', TypeInfo(Integer), A, []); __Message.Read('B', TypeInfo(Integer), B, []); lResult := (__Instance as IProxyServerMainService).Sum(A, B); __Message.InitializeResponseMessage(__Transport, 'ProxyServerMainLibrary', 'ProxyServerMainService', 'SumResponse'); __Message.Write('Result', TypeInfo(Integer), lResult, []); __Message.Finalize; finally end; end; procedure TProxyServerMainService_Invoker.Invoke_GetServerTime(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); { function GetServerTime: DateTime; } var lResult: DateTime; begin try lResult := (__Instance as IProxyServerMainService).GetServerTime; __Message.InitializeResponseMessage(__Transport, 'ProxyServerMainLibrary', 'ProxyServerMainService', 'GetServerTimeResponse'); __Message.Write('Result', TypeInfo(DateTime), lResult, [paIsDateTime]); __Message.Finalize; finally end; end; procedure TProxyServerMainService_Invoker.Invoke_EchoStruct(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions); { function EchoStruct(const aTestStruct: TestStruct): TestStruct; } var aTestStruct: ProxyServerMainLibrary_Intf.TestStruct; lResult: ProxyServerMainLibrary_Intf.TestStruct; __lObjectDisposer: TROObjectDisposer; begin aTestStruct := nil; lResult := nil; try __Message.Read('aTestStruct', TypeInfo(ProxyServerMainLibrary_Intf.TestStruct), aTestStruct, []); lResult := (__Instance as IProxyServerMainService).EchoStruct(aTestStruct); __Message.InitializeResponseMessage(__Transport, 'ProxyServerMainLibrary', 'ProxyServerMainService', 'EchoStructResponse'); __Message.Write('Result', TypeInfo(ProxyServerMainLibrary_Intf.TestStruct), lResult, []); __Message.Finalize; finally __lObjectDisposer := TROObjectDisposer.Create(__Instance); try __lObjectDisposer.Add(aTestStruct); __lObjectDisposer.Add(lResult); finally __lObjectDisposer.Free(); end; end; end; end.