X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2FStationWorker.ts;h=c3c5cb51346ce2f36f843f816c29eb27abbdb524;hb=6f9f188b8335f5cc9fcb0fe9ba2e72525b70231a;hp=45449c1b5bfc76bbad8757af5aaa9bcf52a5b7aa;hpb=56a74daeff10643ac9b9adebb037526b5096c1ee;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/StationWorker.ts b/src/charging-station/StationWorker.ts index 45449c1b..c3c5cb51 100644 --- a/src/charging-station/StationWorker.ts +++ b/src/charging-station/StationWorker.ts @@ -1,3 +1,5 @@ +// Partial Copyright Jerome Benoit. 2021. All Rights Reserved. + import { StationWorkerData, WorkerEvents } from '../types/Worker'; import { parentPort, workerData } from 'worker_threads'; @@ -18,15 +20,23 @@ if (Utils.workerPoolInUse()) { } } +/** + * Listen messages send by the main thread + */ function addMessageListener(): void { - parentPort.on('message', (message) => { + parentPort?.on('message', (message) => { if (message.id === WorkerEvents.START_WORKER_ELEMENT) { startChargingStation(message.workerData); } }); } +/** + * Create and start a charging station instance + * + * @param {StationWorkerData} data workerData + */ function startChargingStation(data: StationWorkerData): void { - const station = new ChargingStation(data.index , data.templateFile); + const station = new ChargingStation(data.index, data.templateFile); station.start(); }