X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Futils%2FConfiguration.js;h=cba1db2c3f2c9c39bbe7993694ac4b3b93964b18;hb=027b409aee809cc066ab83006284d03e1678023b;hp=7fdfbe2d77a0fb360197e403165b1e7d4d0eab0a;hpb=4d127f7fc6712dd32fb8ca3da47989e0c911ffe9;p=e-mobility-charging-stations-simulator.git diff --git a/src/utils/Configuration.js b/src/utils/Configuration.js index 7fdfbe2d..cba1db2c 100644 --- a/src/utils/Configuration.js +++ b/src/utils/Configuration.js @@ -1,41 +1,37 @@ -const config = require('../assets/config.json'); +const fs = require('fs'); +const Utils = require('./Utils'); class Configuration { + static configurationFile; + // Read the config file static getConfig() { - return config; + if (!Configuration.configurationFile) { + Configuration.configurationFile = JSON.parse(fs.readFileSync('./src/assets/config.json', 'utf8')); + } + return Configuration.configurationFile; } static getStatisticsDisplayInterval() { // Read conf - return Configuration.getConfig().statisticsDisplayInterval; + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'statisticsDisplayInterval') ? Configuration.getConfig().statisticsDisplayInterval : 60; } static getAutoReconnectTimeout() { // Read conf - return Configuration.getConfig().hasOwnProperty('autoReconnectTimeout') ? Configuration.getConfig().autoReconnectTimeout : 10; + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'autoReconnectTimeout') ? Configuration.getConfig().autoReconnectTimeout : 10; } static getAutoReconnectMaxRetries() { // Read conf - return Configuration.getConfig().hasOwnProperty('autoReconnectMaxRetries') ? Configuration.getConfig().autoReconnectMaxRetries : -1; + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'autoReconnectMaxRetries') ? Configuration.getConfig().autoReconnectMaxRetries : -1; } - static getChargingStationTemplateURLs() { + static getStationTemplateURLs() { // Read conf return Configuration.getConfig().stationTemplateURLs; } - static getChargingStationTemplate() { - // Read conf - return Configuration.getConfig().stationTemplate; - } - - static getNumberofChargingStation() { - // Read conf - return (Configuration.getConfig().numberOfStation ? Configuration.getConfig().numberOfStation : 0); - } - static useWorkerPool() { return Configuration.getConfig().useWorkerPool; } @@ -45,25 +41,23 @@ class Configuration { } static getConsoleLog() { - return (Configuration.getConfig().hasOwnProperty('consoleLog') ? Configuration.getConfig().consoleLog : false); + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'consoleLog') ? Configuration.getConfig().consoleLog : false; } - static getLogFile() { - return (Configuration.getConfig().hasOwnProperty('logFile') ? Configuration.getConfig().logFile : 'combined.log'); + static getLogFormat() { + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'logFormat') ? Configuration.getConfig().logFormat : 'simple'; } - static getErrorFile() { - return (Configuration.getConfig().hasOwnProperty('errorFile') ? Configuration.getConfig().errorFile : 'error.log'); + static getLogLevel() { + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'logLevel') ? Configuration.getConfig().logLevel : 'info'; } - static getMeterValueInterval() { - // Read conf - return (Configuration.getChargingStationConfiguration().hasOwnProperty('meterValueInterval') ? Configuration.getChargingStationConfiguration().meterValueInterval * 1000 : 60000); + static getLogFile() { + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'logFile') ? Configuration.getConfig().logFile : 'combined.log'; } - static getAutomaticTransactionConfiguration() { - // Read conf - return Configuration.getChargingStationTemplate().AutomaticTransactionGenerator; + static getErrorFile() { + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'errorFile') ? Configuration.getConfig().errorFile : 'error.log'; } static getSupervisionURLs() { @@ -71,24 +65,8 @@ class Configuration { return Configuration.getConfig().supervisionURLs; } - static getEquallySupervisionDistribution() { - return Configuration.getConfig().distributeStationToTenantEqually; - } - - static getChargingStationConfiguration() { - return (Configuration.getChargingStationTemplate().hasOwnProperty('Configuration') ? Configuration.getChargingStationTemplate().Configuration : {}); - } - - static getChargingStationAuthorizationFile() { - return (Configuration.getChargingStationTemplate().hasOwnProperty('authorizationFile') ? Configuration.getChargingStationTemplate().authorizationFile : ''); - } - - static getChargingStationConnectors() { - return Configuration.getChargingStationTemplate().Connectors; - } - - static getChargingStationConnector(number) { - return Configuration.getChargingStationTemplate().Connectors[number]; + static getDistributeStationToTenantEqually() { + return Utils.objectHasOwnProperty(Configuration.getConfig(), 'distributeStationToTenantEqually') ? Configuration.getConfig().distributeStationToTenantEqually : true; } }