533 lines
22 KiB
ObjectPascal
533 lines
22 KiB
ObjectPascal
unit DataAbstract4_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. }
|
|
{----------------------------------------------------------------------------}
|
|
|
|
{$I DataAbstract.inc}
|
|
|
|
interface
|
|
|
|
uses
|
|
{vcl:} Classes,
|
|
{RemObjects:} uROXMLIntf, uROServer, uROServerIntf, uROTypes, uROClientIntf,
|
|
{Generated:} DataAbstract4_Intf;
|
|
|
|
type
|
|
{$M+}
|
|
TDataAbstractService_Invoker = class(TROInvoker)
|
|
private
|
|
protected
|
|
published
|
|
procedure Invoke_GetSchema(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_GetData(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_UpdateData(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_ExecuteCommand(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_ExecuteCommandEx(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_GetTableSchema(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_GetCommandSchema(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_SQLGetData(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_SQLExecuteCommand(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_GetDatasetScripts(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_RegisterForDataChangeNotification(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_UnregisterForDataChangeNotification(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
end;
|
|
{$M-}
|
|
|
|
{$M+}
|
|
TBaseLoginService_Invoker = class(TROInvoker)
|
|
private
|
|
protected
|
|
published
|
|
procedure Invoke_Logout(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
end;
|
|
{$M-}
|
|
|
|
{$M+}
|
|
TMultiDbLoginService_Invoker = class(TBaseLoginService_Invoker)
|
|
private
|
|
protected
|
|
published
|
|
procedure Invoke_Login(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
end;
|
|
{$M-}
|
|
|
|
{$M+}
|
|
TMultiDbLoginServiceV5_Invoker = class(TMultiDbLoginService_Invoker)
|
|
private
|
|
protected
|
|
published
|
|
procedure Invoke_GetConnectionNames(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
procedure Invoke_GetDefaultConnectionName(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
end;
|
|
{$M-}
|
|
|
|
{$M+}
|
|
TSimpleLoginService_Invoker = class(TBaseLoginService_Invoker)
|
|
private
|
|
protected
|
|
published
|
|
procedure Invoke_Login(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
end;
|
|
{$M-}
|
|
|
|
implementation
|
|
|
|
uses
|
|
{RemObjects:} uRORes, uROClient;
|
|
|
|
{ TDataAbstractService_Invoker }
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_GetSchema(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function GetSchema(const aFilter: Utf8String): Utf8String; }
|
|
var
|
|
aFilter: Utf8String;
|
|
lResult: Utf8String;
|
|
begin
|
|
try
|
|
__Message.Read('aFilter', TypeInfo(Utf8String), aFilter, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).GetSchema(aFilter);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'GetSchemaResponse');
|
|
__Message.Write('Result', TypeInfo(Utf8String), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_GetData(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function GetData(const aTableNameArray: StringArray; const aTableRequestInfoArray: TableRequestInfoArray): Binary; }
|
|
var
|
|
aTableNameArray: DataAbstract4_Intf.StringArray;
|
|
aTableRequestInfoArray: DataAbstract4_Intf.TableRequestInfoArray;
|
|
lResult: Binary;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aTableNameArray := nil;
|
|
aTableRequestInfoArray := nil;
|
|
lResult := nil;
|
|
try
|
|
__Message.Read('aTableNameArray', TypeInfo(DataAbstract4_Intf.StringArray), aTableNameArray, []);
|
|
__Message.Read('aTableRequestInfoArray', TypeInfo(DataAbstract4_Intf.TableRequestInfoArray), aTableRequestInfoArray, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).GetData(aTableNameArray, aTableRequestInfoArray);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'GetDataResponse');
|
|
__Message.Write('Result', TypeInfo(Binary), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aTableNameArray);
|
|
__lObjectDisposer.Add(aTableRequestInfoArray);
|
|
__lObjectDisposer.Add(lResult);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_UpdateData(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function UpdateData(const aDelta: Binary): Binary; }
|
|
var
|
|
aDelta: Binary;
|
|
lResult: Binary;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aDelta := nil;
|
|
lResult := nil;
|
|
try
|
|
__Message.Read('aDelta', TypeInfo(Binary), aDelta, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).UpdateData(aDelta);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'UpdateDataResponse');
|
|
__Message.Write('Result', TypeInfo(Binary), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aDelta);
|
|
__lObjectDisposer.Add(lResult);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_ExecuteCommand(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function ExecuteCommand(const aCommandName: Utf8String; const aParameterArray: DataParameterArray): Integer; }
|
|
var
|
|
aCommandName: Utf8String;
|
|
aParameterArray: DataAbstract4_Intf.DataParameterArray;
|
|
lResult: Integer;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aParameterArray := nil;
|
|
try
|
|
__Message.Read('aCommandName', TypeInfo(Utf8String), aCommandName, []);
|
|
__Message.Read('aParameterArray', TypeInfo(DataAbstract4_Intf.DataParameterArray), aParameterArray, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).ExecuteCommand(aCommandName, aParameterArray);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'ExecuteCommandResponse');
|
|
__Message.Write('Result', TypeInfo(Integer), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aParameterArray);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_ExecuteCommandEx(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function ExecuteCommandEx(const aCommandName: Utf8String; const aInputParameters: DataParameterArray; out aOutputParameters: DataParameterArray): Integer; }
|
|
var
|
|
aCommandName: Utf8String;
|
|
aInputParameters: DataAbstract4_Intf.DataParameterArray;
|
|
aOutputParameters: DataAbstract4_Intf.DataParameterArray;
|
|
lResult: Integer;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aInputParameters := nil;
|
|
aOutputParameters := nil;
|
|
try
|
|
__Message.Read('aCommandName', TypeInfo(Utf8String), aCommandName, []);
|
|
__Message.Read('aInputParameters', TypeInfo(DataAbstract4_Intf.DataParameterArray), aInputParameters, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).ExecuteCommandEx(aCommandName, aInputParameters, aOutputParameters);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'ExecuteCommandExResponse');
|
|
__Message.Write('Result', TypeInfo(Integer), lResult, []);
|
|
__Message.Write('aOutputParameters', TypeInfo(DataAbstract4_Intf.DataParameterArray), aOutputParameters, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aInputParameters);
|
|
__lObjectDisposer.Add(aOutputParameters);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_GetTableSchema(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function GetTableSchema(const aTableNameArray: StringArray): Utf8String; }
|
|
var
|
|
aTableNameArray: DataAbstract4_Intf.StringArray;
|
|
lResult: Utf8String;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aTableNameArray := nil;
|
|
try
|
|
__Message.Read('aTableNameArray', TypeInfo(DataAbstract4_Intf.StringArray), aTableNameArray, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).GetTableSchema(aTableNameArray);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'GetTableSchemaResponse');
|
|
__Message.Write('Result', TypeInfo(Utf8String), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aTableNameArray);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_GetCommandSchema(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function GetCommandSchema(const aCommandNameArray: StringArray): Utf8String; }
|
|
var
|
|
aCommandNameArray: DataAbstract4_Intf.StringArray;
|
|
lResult: Utf8String;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aCommandNameArray := nil;
|
|
try
|
|
__Message.Read('aCommandNameArray', TypeInfo(DataAbstract4_Intf.StringArray), aCommandNameArray, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).GetCommandSchema(aCommandNameArray);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'GetCommandSchemaResponse');
|
|
__Message.Write('Result', TypeInfo(Utf8String), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aCommandNameArray);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_SQLGetData(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function SQLGetData(const aSQLText: Utf8String; const aIncludeSchema: Boolean; const aMaxRecords: Integer): Binary; }
|
|
var
|
|
aSQLText: Utf8String;
|
|
aIncludeSchema: Boolean;
|
|
aMaxRecords: Integer;
|
|
lResult: Binary;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
lResult := nil;
|
|
try
|
|
__Message.Read('aSQLText', TypeInfo(Utf8String), aSQLText, []);
|
|
__Message.Read('aIncludeSchema', TypeInfo(Boolean), aIncludeSchema, []);
|
|
__Message.Read('aMaxRecords', TypeInfo(Integer), aMaxRecords, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).SQLGetData(aSQLText, aIncludeSchema, aMaxRecords);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'SQLGetDataResponse');
|
|
__Message.Write('Result', TypeInfo(Binary), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(lResult);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_SQLExecuteCommand(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function SQLExecuteCommand(const aSQLText: Utf8String): Integer; }
|
|
var
|
|
aSQLText: Utf8String;
|
|
lResult: Integer;
|
|
begin
|
|
try
|
|
__Message.Read('aSQLText', TypeInfo(Utf8String), aSQLText, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).SQLExecuteCommand(aSQLText);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'SQLExecuteCommandResponse');
|
|
__Message.Write('Result', TypeInfo(Integer), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_GetDatasetScripts(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function GetDatasetScripts(const DatasetNames: Utf8String): Utf8String; }
|
|
var
|
|
DatasetNames: Utf8String;
|
|
lResult: Utf8String;
|
|
begin
|
|
try
|
|
__Message.Read('DatasetNames', TypeInfo(Utf8String), DatasetNames, []);
|
|
|
|
lResult := (__Instance as IDataAbstractService).GetDatasetScripts(DatasetNames);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'GetDatasetScriptsResponse');
|
|
__Message.Write('Result', TypeInfo(Utf8String), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_RegisterForDataChangeNotification(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ procedure RegisterForDataChangeNotification(const aTableName: Utf8String); }
|
|
var
|
|
aTableName: Utf8String;
|
|
begin
|
|
try
|
|
__Message.Read('aTableName', TypeInfo(Utf8String), aTableName, []);
|
|
|
|
(__Instance as IDataAbstractService).RegisterForDataChangeNotification(aTableName);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'RegisterForDataChangeNotificationResponse');
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
__oResponseOptions := [roNoResponse];
|
|
|
|
finally
|
|
end;
|
|
end;
|
|
|
|
procedure TDataAbstractService_Invoker.Invoke_UnregisterForDataChangeNotification(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ procedure UnregisterForDataChangeNotification(const aTableName: Utf8String); }
|
|
var
|
|
aTableName: Utf8String;
|
|
begin
|
|
try
|
|
__Message.Read('aTableName', TypeInfo(Utf8String), aTableName, []);
|
|
|
|
(__Instance as IDataAbstractService).UnregisterForDataChangeNotification(aTableName);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'DataAbstractService', 'UnregisterForDataChangeNotificationResponse');
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
__oResponseOptions := [roNoResponse];
|
|
|
|
finally
|
|
end;
|
|
end;
|
|
|
|
{ TSimpleLoginService_Invoker }
|
|
|
|
procedure TSimpleLoginService_Invoker.Invoke_Login(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function Login(const aUserID: Utf8String; const aPassword: Utf8String; out aUserInfo: UserInfo): Boolean; }
|
|
var
|
|
aUserID: Utf8String;
|
|
aPassword: Utf8String;
|
|
aUserInfo: DataAbstract4_Intf.UserInfo;
|
|
lResult: Boolean;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aUserInfo := nil;
|
|
try
|
|
__Message.Read('aUserID', TypeInfo(Utf8String), aUserID, []);
|
|
__Message.Read('aPassword', TypeInfo(Utf8String), aPassword, []);
|
|
|
|
lResult := (__Instance as ISimpleLoginService).Login(aUserID, aPassword, aUserInfo);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'SimpleLoginService', 'LoginResponse');
|
|
__Message.Write('Result', TypeInfo(Boolean), lResult, []);
|
|
__Message.Write('aUserInfo', TypeInfo(DataAbstract4_Intf.UserInfo), aUserInfo, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aUserInfo);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
{ TBaseLoginService_Invoker }
|
|
|
|
procedure TBaseLoginService_Invoker.Invoke_Logout(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ procedure Logout; }
|
|
begin
|
|
try
|
|
(__Instance as IBaseLoginService).Logout;
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'BaseLoginService', 'LogoutResponse');
|
|
__Message.Finalize;
|
|
|
|
__oResponseOptions := [roNoResponse];
|
|
|
|
finally
|
|
end;
|
|
end;
|
|
|
|
{ TMultiDbLoginService_Invoker }
|
|
|
|
procedure TMultiDbLoginService_Invoker.Invoke_Login(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function Login(const aUserID: Utf8String; const aPassword: Utf8String; const aConnectionName: Utf8String; out aUserInfo: UserInfo): Boolean; }
|
|
var
|
|
aUserID: Utf8String;
|
|
aPassword: Utf8String;
|
|
aConnectionName: Utf8String;
|
|
aUserInfo: DataAbstract4_Intf.UserInfo;
|
|
lResult: Boolean;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
aUserInfo := nil;
|
|
try
|
|
__Message.Read('aUserID', TypeInfo(Utf8String), aUserID, []);
|
|
__Message.Read('aPassword', TypeInfo(Utf8String), aPassword, []);
|
|
__Message.Read('aConnectionName', TypeInfo(Utf8String), aConnectionName, []);
|
|
|
|
lResult := (__Instance as IMultiDbLoginService).Login(aUserID, aPassword, aConnectionName, aUserInfo);
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'MultiDbLoginService', 'LoginResponse');
|
|
__Message.Write('Result', TypeInfo(Boolean), lResult, []);
|
|
__Message.Write('aUserInfo', TypeInfo(DataAbstract4_Intf.UserInfo), aUserInfo, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(aUserInfo);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
{ TMultiDbLoginServiceV5_Invoker }
|
|
|
|
procedure TMultiDbLoginServiceV5_Invoker.Invoke_GetConnectionNames(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function GetConnectionNames: StringArray; }
|
|
var
|
|
lResult: DataAbstract4_Intf.StringArray;
|
|
__lObjectDisposer: TROObjectDisposer;
|
|
begin
|
|
lResult := nil;
|
|
try
|
|
lResult := (__Instance as IMultiDbLoginServiceV5).GetConnectionNames;
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'MultiDbLoginServiceV5', 'GetConnectionNamesResponse');
|
|
__Message.Write('Result', TypeInfo(DataAbstract4_Intf.StringArray), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
__lObjectDisposer := TROObjectDisposer.Create(__Instance);
|
|
try
|
|
__lObjectDisposer.Add(lResult);
|
|
finally
|
|
__lObjectDisposer.Free();
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TMultiDbLoginServiceV5_Invoker.Invoke_GetDefaultConnectionName(const __Instance:IInterface; const __Message:IROMessage; const __Transport:IROTransport; out __oResponseOptions:TROResponseOptions);
|
|
{ function GetDefaultConnectionName: Utf8String; }
|
|
var
|
|
lResult: Utf8String;
|
|
begin
|
|
try
|
|
lResult := (__Instance as IMultiDbLoginServiceV5).GetDefaultConnectionName;
|
|
|
|
__Message.InitializeResponseMessage(__Transport, 'DataAbstract4', 'MultiDbLoginServiceV5', 'GetDefaultConnectionNameResponse');
|
|
__Message.Write('Result', TypeInfo(Utf8String), lResult, []);
|
|
__Message.Finalize;
|
|
__Message.UnsetAttributes(__Transport);
|
|
|
|
finally
|
|
end;
|
|
end;
|
|
|
|
end.
|