BSOne.SFC/eCrmHE/Utils/EXE_BS1Agents/ManagerSetting.pas

93 lines
1.8 KiB
Plaintext

{*******************************************************}
{ }
{ ManagerSetting }
{ }
{ Copyright (C) 2023 kku }
{ }
{*******************************************************}
unit ManagerSetting;
interface
uses
Tocsg.Obj, System.SysUtils, System.Classes, Winapi.Windows;
const
DAT_SETTING = 'BS1Agents.dat';
type
TManagerSetting = class(TTgObject)
private
procedure Load;
public
SvrAddr,
EmpNoHead: String;
ConnAgents,
ReadTimeout,
ConnectTimeout: DWORD;
Constructor Create;
Destructor Destroy; override;
procedure Save;
end;
var
gSet: TManagerSetting = nil;
implementation
uses
superobject, Tocsg.Path;
{ TManagerSetting }
Constructor TManagerSetting.Create;
begin
Inherited Create;
ASSERT(gSet = nil);
gSet := Self;
SvrAddr := '';
EmpNoHead := '';
ConnAgents := 1;
ReadTimeout := 30000;
ConnectTimeout := 30000;
Load;
end;
Destructor TManagerSetting.Destroy;
begin
gSet := nil;
Inherited;
end;
procedure TManagerSetting.Load;
var
O: ISuperObject;
begin
if LoadJsonObjFromFile(O, GetRunExePathDir + DAT_SETTING) then
begin
SvrAddr := O.S['SvrAddr'];
EmpNoHead := O.S['EmpNoHead'];
ConnAgents := O.I['ConnAgents'];
ReadTimeout := O.I['ReadTimeout'];
ConnectTimeout := O.I['ConnectTimeout'];
end;
end;
procedure TManagerSetting.Save;
var
O: ISuperObject;
begin
O := SO;
O.S['SvrAddr'] := SvrAddr;
O.S['EmpNoHead'] := EmpNoHead;
O.I['ConnAgents'] := ConnAgents;
O.I['ReadTimeout'] := ReadTimeout;
O.I['ConnectTimeout'] := ConnectTimeout;
SaveJsonObjToFile(O, GetRunExePathDir + DAT_SETTING);
end;
end.