1 import ConfigurationData
, { StationTemplateURL
} from
'../types/ConfigurationData';
3 import Utils from
'./Utils';
6 export default class Configuration
{
7 static configuration
: ConfigurationData
;
9 // Read the config file
10 static getConfig(): ConfigurationData
{
11 if (!Configuration
.configuration
) {
12 Configuration
.configuration
= JSON
.parse(fs
.readFileSync('./src/assets/config.json', 'utf8')) as ConfigurationData
;
14 return Configuration
.configuration
;
17 static getStatisticsDisplayInterval(): number {
19 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'statisticsDisplayInterval') ? Configuration
.getConfig().statisticsDisplayInterval
: 60;
22 static getAutoReconnectTimeout(): number {
24 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'autoReconnectTimeout') ? Configuration
.getConfig().autoReconnectTimeout
: 10;
27 static getAutoReconnectMaxRetries(): number {
29 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'autoReconnectMaxRetries') ? Configuration
.getConfig().autoReconnectMaxRetries
: -1;
32 static getStationTemplateURLs(): StationTemplateURL
[] {
34 return Configuration
.getConfig().stationTemplateURLs
;
37 static useWorkerPool(): boolean {
38 return Configuration
.getConfig().useWorkerPool
;
41 static getWorkerPoolSize(): number {
42 return Configuration
.getConfig().workerPoolSize
;
45 static getConsoleLog(): boolean {
46 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'consoleLog') ? Configuration
.getConfig().consoleLog
: false;
49 static getLogFormat(): string {
50 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'logFormat') ? Configuration
.getConfig().logFormat
: 'simple';
53 static getLogLevel(): string {
54 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'logLevel') ? Configuration
.getConfig().logLevel
: 'info';
57 static getLogFile(): string {
58 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'logFile') ? Configuration
.getConfig().logFile
: 'combined.log';
61 static getErrorFile(): string {
62 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'errorFile') ? Configuration
.getConfig().errorFile
: 'error.log';
65 static getSupervisionURLs(): string[] {
67 return Configuration
.getConfig().supervisionURLs
;
70 static getDistributeStationToTenantEqually(): boolean {
71 return Utils
.objectHasOwnProperty(Configuration
.getConfig(), 'distributeStationToTenantEqually') ? Configuration
.getConfig().distributeStationToTenantEqually
: true;