eslint: report missed TS rules in the shared rules
[e-mobility-charging-stations-simulator.git] / src / charging-station / Bootstrap.ts
index cfb4eed6b309721fc5055998ca71526bc3366cb6..329c5546dcde0a255add2c4a136652d2b337cc61 100644 (file)
@@ -30,8 +30,10 @@ import UIServerFactory from './ui-server/UIServerFactory';
 
 const moduleName = 'Bootstrap';
 
-const missingChargingStationsConfigurationExitCode = 1;
-const noChargingStationTemplatesExitCode = 2;
+enum exitCodes {
+  missingChargingStationsConfiguration = 1,
+  noChargingStationTemplates = 2,
+}
 
 export class Bootstrap {
   private static instance: Bootstrap | null = null;
@@ -107,13 +109,13 @@ export class Bootstrap {
           console.warn(
             chalk.yellow("'stationTemplateUrls' not defined or empty in configuration, exiting")
           );
-          process.exit(missingChargingStationsConfigurationExitCode);
+          process.exit(exitCodes.missingChargingStationsConfiguration);
         }
         if (this.numberOfChargingStations === 0) {
           console.warn(
             chalk.yellow('No charging station template enabled in configuration, exiting')
           );
-          process.exit(noChargingStationTemplatesExitCode);
+          process.exit(exitCodes.noChargingStationTemplates);
         } else {
           console.info(
             chalk.green(
@@ -226,11 +228,25 @@ export class Bootstrap {
   private workerEventStarted = (data: ChargingStationData) => {
     this.uiServer?.chargingStations.set(data.stationInfo.hashId, data);
     ++this.numberOfStartedChargingStations;
+    logger.info(
+      `${this.logPrefix()} ${moduleName}.workerEventStarted: Charging station ${
+        data.stationInfo.chargingStationId
+      } (hashId: ${data.stationInfo.hashId}) started (${
+        this.numberOfStartedChargingStations
+      } started from ${this.numberOfChargingStations})`
+    );
   };
 
   private workerEventStopped = (data: ChargingStationData) => {
     this.uiServer?.chargingStations.set(data.stationInfo.hashId, data);
     --this.numberOfStartedChargingStations;
+    logger.info(
+      `${this.logPrefix()} ${moduleName}.workerEventStopped: Charging station ${
+        data.stationInfo.chargingStationId
+      } (hashId: ${data.stationInfo.hashId}) stopped (${
+        this.numberOfStartedChargingStations
+      } started from ${this.numberOfChargingStations})`
+    );
   };
 
   private workerEventUpdated = (data: ChargingStationData) => {