187 lines
5.8 KiB
ObjectPascal
187 lines
5.8 KiB
ObjectPascal
unit ServiceMethods_ServerMain;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, uROPoweredByRemObjectsButton, uDAPoweredByDataAbstractButton,
|
|
StdCtrls, SyncObjs, uDAEngine, uDAADODriver, uDADriverManager, uDAClasses,
|
|
uROClient, uROBinMessage, uROServer, uROIndyTCPServer, uROIndyHTTPServer,
|
|
ExtCtrls;
|
|
|
|
type
|
|
TServiceMethods_ServerMainForm = class(TForm)
|
|
Memo: TMemo;
|
|
ConnectionManager: TDAConnectionManager;
|
|
DriverManager: TDADriverManager;
|
|
ADODriver: TDAADODriver;
|
|
Server: TROIndyHTTPServer;
|
|
Message: TROBinMessage;
|
|
GroupBox1: TGroupBox;
|
|
cbAfterReleaseConnection: TCheckBox;
|
|
cbAfterProcessDeltas: TCheckBox;
|
|
cbAfterGetDatasetSchema: TCheckBox;
|
|
cbAfterGetDatasetData: TCheckBox;
|
|
cbAfterExecuteCommand: TCheckBox;
|
|
cbAfterAcquireConnection: TCheckBox;
|
|
cbBeforeReleaseConnection: TCheckBox;
|
|
cbBeforeProcessDeltas: TCheckBox;
|
|
cbBeforeGetDatasetSchema: TCheckBox;
|
|
cbBeforeGetDatasetData: TCheckBox;
|
|
cbBeforeExecuteCommand: TCheckBox;
|
|
cbBeforeAcquireConnection: TCheckBox;
|
|
cbValidateCommandExecution: TCheckBox;
|
|
cbUpdateDataRollBackTransaction: TCheckBox;
|
|
cbUpdateDataCommitTransaction: TCheckBox;
|
|
cbUpdateDataBeginTransaction: TCheckBox;
|
|
cbProcessDeltasError: TCheckBox;
|
|
cbGetSchemaAsXMLEvent: TCheckBox;
|
|
cbValidateDatasetAccess: TCheckBox;
|
|
cbValidateDirectSQLAccess: TCheckBox;
|
|
cbAcquireConnectionFailure: TCheckBox;
|
|
GroupBox2: TGroupBox;
|
|
cbProcessDeltasErrorRaise: TCheckBox;
|
|
cbProcessDeltasWithoutUpdateRules: TCheckBox;
|
|
cbAllowExecuteCommands: TCheckBox;
|
|
cbAllowWhereSQL: TCheckBox;
|
|
cbAllowExecuteSQL: TCheckBox;
|
|
cbAllowSchemaAccess: TCheckBox;
|
|
cbAllowDataAccess: TCheckBox;
|
|
cbAcquireConnection: TCheckBox;
|
|
CheckAllOptionsButton: TButton;
|
|
CheckNoneOptionsButton: TButton;
|
|
CheckAllEventsButton: TButton;
|
|
CheckNoneEventsButton: TButton;
|
|
Panel1: TPanel;
|
|
DAPoweredByDataAbstractButton2: TDAPoweredByDataAbstractButton;
|
|
ClearLogButton: TButton;
|
|
cbAllowDynamicSelect: TCheckBox;
|
|
cbAllowDynamicWhere: TCheckBox;
|
|
cbAllowUpdates: TCheckBox;
|
|
cbAutoCreateBusinessProcessors: TCheckBox;
|
|
cbBusinessProcessorAutoCreated: TCheckBox;
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure FormDestroy(Sender: TObject);
|
|
procedure ClearLogButtonClick(Sender: TObject);
|
|
procedure CheckAllOptionsButtonClick(Sender: TObject);
|
|
procedure CheckNoneOptionsButtonClick(Sender: TObject);
|
|
procedure CheckAllEventsButtonClick(Sender: TObject);
|
|
procedure CheckNoneEventsButtonClick(Sender: TObject);
|
|
private
|
|
{ Private declarations }
|
|
FcriticalSection: TCriticalSection;
|
|
procedure ChangeOptions(Mode: Boolean);
|
|
procedure ChangeEvent(Mode: Boolean);
|
|
public
|
|
{ Public declarations }
|
|
procedure Log(Str: string);
|
|
end;
|
|
|
|
var
|
|
ServiceMethods_ServerMainForm: TServiceMethods_ServerMainForm;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
{ TServiceMethods_ServerMainForm }
|
|
|
|
procedure TServiceMethods_ServerMainForm.Log(Str: string);
|
|
begin
|
|
FcriticalSection.Enter;
|
|
try
|
|
Memo.Lines.Add(Str);
|
|
finally
|
|
FcriticalSection.Leave;
|
|
end;
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.FormCreate(Sender: TObject);
|
|
begin
|
|
FcriticalSection := TCriticalSection.Create;
|
|
|
|
Server.Active := True;
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.FormDestroy(Sender: TObject);
|
|
begin
|
|
FcriticalSection.Free;
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.ClearLogButtonClick(
|
|
Sender: TObject);
|
|
begin
|
|
FcriticalSection.Enter;
|
|
try
|
|
Memo.Lines.Clear;
|
|
finally
|
|
FcriticalSection.Leave;
|
|
end;
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.CheckAllOptionsButtonClick(Sender: TObject);
|
|
begin
|
|
ChangeOptions(True);
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.ChangeOptions(Mode: Boolean);
|
|
begin
|
|
cbAllowSchemaAccess.Checked := Mode;
|
|
cbAcquireConnection.Checked := Mode;
|
|
cbAllowDataAccess.Checked := Mode;
|
|
cbAllowWhereSQL.Checked := Mode;
|
|
cbAllowExecuteCommands.Checked := Mode;
|
|
cbAllowExecuteSQL.Checked := Mode;
|
|
cbProcessDeltasWithoutUpdateRules.Checked := Mode;
|
|
cbProcessDeltasErrorRaise.Checked := Mode;
|
|
cbAllowDynamicSelect.Checked := Mode;
|
|
cbAllowDynamicWhere.Checked := Mode;
|
|
cbAllowUpdates.Checked := Mode;
|
|
cbAutoCreateBusinessProcessors.Checked := Mode;
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.CheckNoneOptionsButtonClick(
|
|
Sender: TObject);
|
|
begin
|
|
ChangeOptions(False);
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.ChangeEvent(Mode: Boolean);
|
|
begin
|
|
cbAfterReleaseConnection.Checked := Mode;
|
|
cbAfterProcessDeltas.Checked := Mode;
|
|
cbAfterGetDatasetSchema.Checked := Mode;
|
|
cbAfterGetDatasetData.Checked := Mode;
|
|
cbAfterExecuteCommand.Checked := Mode;
|
|
cbAfterAcquireConnection.Checked := Mode;
|
|
cbBeforeReleaseConnection.Checked := Mode;
|
|
cbBeforeProcessDeltas.Checked := Mode;
|
|
cbBeforeGetDatasetSchema.Checked := Mode;
|
|
cbBeforeGetDatasetData.Checked := Mode;
|
|
cbBeforeExecuteCommand.Checked := Mode;
|
|
cbBeforeAcquireConnection.Checked := Mode;
|
|
cbValidateCommandExecution.Checked := Mode;
|
|
cbUpdateDataRollBackTransaction.Checked := Mode;
|
|
cbUpdateDataCommitTransaction.Checked := Mode;
|
|
cbUpdateDataBeginTransaction.Checked := Mode;
|
|
cbProcessDeltasError.Checked := Mode;
|
|
cbGetSchemaAsXMLEvent.Checked := Mode;
|
|
cbValidateDatasetAccess.Checked := Mode;
|
|
cbValidateDirectSQLAccess.Checked := Mode;
|
|
cbAcquireConnectionFailure.Checked := Mode;
|
|
cbBusinessProcessorAutoCreated.Checked := Mode;
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.CheckAllEventsButtonClick(Sender: TObject);
|
|
begin
|
|
ChangeEvent(True);
|
|
end;
|
|
|
|
procedure TServiceMethods_ServerMainForm.CheckNoneEventsButtonClick(Sender: TObject);
|
|
begin
|
|
ChangeEvent(False);
|
|
end;
|
|
|
|
end.
|
|
|