Componentes.Terceros.RemObj.../internal/5.0.23.613/1/RemObjects SDK for Delphi/Samples/Extended File Transfer/ExtendedFileTransferLibrary_Invk.pas
david d99a44999f - Modificación del paquete RemObjects_Core_D10 para que sea un paquete de runtime/designtime (antes era designtime sólo)
- Recompilación en Delphi10 de todos los paquetes de RO para generar las DCU's en Lib\D10

git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@7 b6239004-a887-0f4b-9937-50029ccdca16
2007-09-10 13:36:58 +00:00

119 lines
4.6 KiB
ObjectPascal

unit ExtendedFileTransferLibrary_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:} ExtendedFileTransferLibrary_Intf;
type
TExtendedFileTransferService_Invoker = class(TROInvoker)
private
protected
published
procedure Invoke_downloadsequence(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_uploadchunk(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
procedure Invoke_uploadfinished(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
end;
implementation
uses
{RemObjects:} uRORes, uROClient;
{ TExtendedFileTransferService_Invoker }
procedure TExtendedFileTransferService_Invoker.Invoke_downloadsequence(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure downloadsequence(const filename: String; const sequence: Integer; out filedata: Binary; out filesize: Int64); }
var
filename: String;
sequence: Integer;
filedata: Binary;
filesize: Int64;
__lObjectDisposer: TROObjectDisposer;
begin
filedata := nil;
try
__Message.Read('filename', TypeInfo(String), filename, []);
__Message.Read('sequence', TypeInfo(Integer), sequence, []);
(__Instance as IExtendedFileTransferService).downloadsequence(filename, sequence, filedata, filesize);
__Message.InitializeResponseMessage(__Transport, 'ExtendedFileTransferLibrary', 'ExtendedFileTransferService', 'downloadsequenceResponse');
__Message.Write('filedata', TypeInfo(Binary), filedata, []);
__Message.Write('filesize', TypeInfo(Int64), filesize, []);
__Message.Finalize;
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(filedata);
finally
__lObjectDisposer.Free();
end;
end;
end;
procedure TExtendedFileTransferService_Invoker.Invoke_uploadchunk(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure uploadchunk(const isfirst: Boolean; const filename: String; const filedata: Binary); }
var
isfirst: Boolean;
filename: String;
filedata: Binary;
__lObjectDisposer: TROObjectDisposer;
begin
filedata := nil;
try
__Message.Read('isfirst', TypeInfo(Boolean), isfirst, []);
__Message.Read('filename', TypeInfo(String), filename, []);
__Message.Read('filedata', TypeInfo(Binary), filedata, []);
(__Instance as IExtendedFileTransferService).uploadchunk(isfirst, filename, filedata);
__Message.InitializeResponseMessage(__Transport, 'ExtendedFileTransferLibrary', 'ExtendedFileTransferService', 'uploadchunkResponse');
__Message.Finalize;
__oResponseOptions := [roNoResponse];
finally
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
try
__lObjectDisposer.Add(filedata);
finally
__lObjectDisposer.Free();
end;
end;
end;
procedure TExtendedFileTransferService_Invoker.Invoke_uploadfinished(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
{ procedure uploadfinished(const filename: String; const filesize: Int64); }
var
filename: String;
filesize: Int64;
begin
try
__Message.Read('filename', TypeInfo(String), filename, []);
__Message.Read('filesize', TypeInfo(Int64), filesize, []);
(__Instance as IExtendedFileTransferService).uploadfinished(filename, filesize);
__Message.InitializeResponseMessage(__Transport, 'ExtendedFileTransferLibrary', 'ExtendedFileTransferService', 'uploadfinishedResponse');
__Message.Finalize;
__oResponseOptions := [roNoResponse];
finally
end;
end;
end.