unit %UNIT_NAME%; {----------------------------------------------------------------------------} { 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 // required units // <%%% START REQUIRED_UNITS %%%> %REQUIRED_UNIT_NAME%, // <%%% END REQUIRED_UNITS %%%> %LIBRARY_NAME%_Intf, {vcl:} Classes, TypInfo, {RemObjects:} uROXMLIntf, uROClasses, uROClient, uROTypes, uROClientIntf, uROAsync; type { Forward declarations } // <%%% START SERVICES %%%> I%SERVICE_NAME%_Async = interface; Co%SERVICE_NAME%_Async = class; T%SERVICE_NAME%_AsyncProxy = class; // <%%% END SERVICES %%%> // <%%% START SERVICES %%%> { I%SERVICE_NAME%_Async } // <%%% START DOCUMENTATION %%%> { Description: %CONTENT% } // <%%% END DOCUMENTATION %%%> I%SERVICE_NAME%_Async = interface%SERVICE_ANCESTOR_NAME% ['%ASYNC_SERVICE_UID%'] // <%%% START FUNCTION_OPERATIONS %%%> procedure Invoke_%OPERATION_NAME%( // <%%% START IN_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END IN_PARAMS %%%> ); function Retrieve_%OPERATION_NAME%( // <%%% START OUT_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END OUT_PARAMS %%%> ): %OPERATION_RESULT%; // <%%% END FUNCTION_OPERATIONS %%%> // <%%% START PROCEDURE_OPERATIONS %%%> procedure Invoke_%OPERATION_NAME%( // <%%% START IN_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END IN_PARAMS %%%> ); // <%%% START IF_OUT_PARAMS %%%> procedure Retrieve_%OPERATION_NAME%( // <%%% START OUT_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END OUT_PARAMS %%%> ); // <%%% END IF_OUT_PARAMS %%%> // <%%% END PROCEDURE_OPERATIONS %%%> end; { Co%SERVICE_NAME%_Async } Co%SERVICE_NAME%_Async = class class function Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): I%SERVICE_NAME%_Async; end; { T%SERVICE_NAME%_Proxy } T%SERVICE_NAME%_AsyncProxy = class(%SERVICE_PROXY_ANCESTOR_NAME%, I%SERVICE_NAME%_Async) protected function __GetInterfaceName:string; override; // <%%% START FUNCTION_OPERATIONS %%%> procedure Invoke_%OPERATION_NAME%( // <%%% START IN_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END IN_PARAMS %%%> ); function Retrieve_%OPERATION_NAME%( // <%%% START OUT_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END OUT_PARAMS %%%> ): %OPERATION_RESULT%; // <%%% END FUNCTION_OPERATIONS %%%> // <%%% START PROCEDURE_OPERATIONS %%%> procedure Invoke_%OPERATION_NAME%( // <%%% START IN_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END IN_PARAMS %%%> ); // <%%% START IF_OUT_PARAMS %%%> procedure Retrieve_%OPERATION_NAME%( // <%%% START OUT_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END OUT_PARAMS %%%> ); // <%%% END IF_OUT_PARAMS %%%> // <%%% END PROCEDURE_OPERATIONS %%%> end; // <%%% END SERVICES %%%> implementation uses {vcl:} SysUtils, {RemObjects:} uROEventRepository, uRORes; // <%%% START SERVICES %%%> { Co%SERVICE_NAME%_Async } class function Co%SERVICE_NAME%_Async.Create(const aMessage: IROMessage; aTransportChannel: IROTransportChannel): I%SERVICE_NAME%_Async; begin result := T%SERVICE_NAME%_AsyncProxy.Create(aMessage, aTransportChannel); end; { T%SERVICE_NAME%_AsyncProxy } function T%SERVICE_NAME%_AsyncProxy.__GetInterfaceName:string; begin result := '%SERVICE_NAME%'; end; // <%%% START FUNCTION_OPERATIONS %%%> procedure T%SERVICE_NAME%_AsyncProxy.Invoke_%OPERATION_NAME%( // <%%% START IN_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END IN_PARAMS %%%> ); begin __AssertProxyNotBusy('%OPERATION_NAME%'); __Message.InitializeRequestMessage(__TransportChannel, '%LIBRARY_NAME%', __InterfaceName, '%OPERATION_NAME%'); // <%%% START IN_PARAMS_NO_STRIP %%%> __Message.Write('%PARAM_NAME%', TypeInfo(%PARAM_TYPE%), %PARAM_NAME%, [%PARAM_ATTRIBUTE%]); // <%%% END IN_PARAMS_NO_STRIP %%%> __DispatchAsyncRequest('%OPERATION_NAME%',__Message); end; function T%SERVICE_NAME%_AsyncProxy.Retrieve_%OPERATION_NAME%( // <%%% START OUT_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END OUT_PARAMS %%%> ): %OPERATION_RESULT%; var __response:TStream; begin // <%%% START OUT_PARAMS_NO_STRIP %%%> // <%%% START IF_PARAM_TYPE_COMPLEX %%%> %PARAM_NAME% := nil; // <%%% END IF_PARAM_TYPE_COMPLEX %%%> // <%%% END OUT_PARAMS_NO_STRIP %%%> // <%%% START IF_RESULT_COMPLEX %%%> Result := nil; // <%%% END IF_RESULT_COMPLEX %%%> __response := __RetrieveAsyncResponse('%OPERATION_NAME%'); __Message.ReadFromStream(__response); __Message.Read('Result', TypeInfo(%OPERATION_RESULT%), Result, [%OPERATION_RESULT_ATTRIBUTE%]); // <%%% START OUT_PARAMS_NO_STRIP %%%> __Message.Read('%PARAM_NAME%', TypeInfo(%PARAM_TYPE%), %PARAM_NAME%, [%PARAM_ATTRIBUTE%]); // <%%% END OUT_PARAMS_NO_STRIP %%%> __response.Free(); end; // <%%% END FUNCTION_OPERATIONS %%%> // <%%% START PROCEDURE_OPERATIONS %%%> procedure T%SERVICE_NAME%_AsyncProxy.Invoke_%OPERATION_NAME%( // <%%% START IN_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END IN_PARAMS %%%> ); var __request:TStream; begin __AssertProxyNotBusy('%OPERATION_NAME%'); __request := TMemoryStream.Create; __Message.InitializeRequestMessage(__TransportChannel, '%LIBRARY_NAME%', __InterfaceName, '%OPERATION_NAME%'); // <%%% START IN_PARAMS_NO_STRIP %%%> __Message.Write('%PARAM_NAME%', TypeInfo(%PARAM_TYPE%), %PARAM_NAME%, [%PARAM_ATTRIBUTE%]); // <%%% END IN_PARAMS_NO_STRIP %%%> __Message.Finalize; __Message.WriteToStream(__request); __DispatchAsyncRequest('%OPERATION_NAME%', __request, False); end; // <%%% START IF_OUT_PARAMS %%%> procedure T%SERVICE_NAME%_AsyncProxy.Retrieve_%OPERATION_NAME%( // <%%% START OUT_PARAMS %%%> %PARAM_FRONT_MODIFIER% %PARAM_NAME%: %PARAM_TYPE%; // <%%% END OUT_PARAMS %%%> ); var __response:TStream; begin // <%%% START OUT_PARAMS_NO_STRIP %%%> // <%%% START IF_PARAM_TYPE_COMPLEX %%%> %PARAM_NAME% := nil; // <%%% END IF_PARAM_TYPE_COMPLEX %%%> // <%%% END OUT_PARAMS_NO_STRIP %%%> __response := __RetrieveAsyncResponse('%OPERATION_NAME%'); __Message.ReadFromStream(__response); // <%%% START OUT_PARAMS_NO_STRIP %%%> __Message.Read('%PARAM_NAME%', TypeInfo(%PARAM_TYPE%), %PARAM_NAME%, [%PARAM_ATTRIBUTE%]); // <%%% END OUT_PARAMS_NO_STRIP %%%> __response.Free(); end; // <%%% END IF_OUT_PARAMS %%%> // <%%% END PROCEDURE_OPERATIONS %%%> // <%%% END SERVICES %%%> initialization finalization end.