X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcharging-station%2FBootstrap.ts;h=acd8e73cb23ea1b7cf0b41e5e6cd3436cc4ee0f9;hb=17ba3be0bb5c0bcb7fff2cefa877af975c0d043a;hp=75accffc9f72b723583fdd8f1681845083e85668;hpb=44fccdf0fe511a528780feb1213bb1049d76be05;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/Bootstrap.ts b/src/charging-station/Bootstrap.ts index 75accffc..acd8e73c 100644 --- a/src/charging-station/Bootstrap.ts +++ b/src/charging-station/Bootstrap.ts @@ -18,6 +18,7 @@ import { BaseError } from '../exception/index.js' import { type Storage, StorageFactory } from '../performance/index.js' import { type ChargingStationData, + type ChargingStationOptions, type ChargingStationWorkerData, type ChargingStationWorkerEventError, type ChargingStationWorkerMessage, @@ -152,10 +153,10 @@ export class Bootstrap extends EventEmitter { ) this.on( ChargingStationWorkerMessageEvents.workerElementError, - (msg: ChargingStationWorkerMessage) => { + (eventError: ChargingStationWorkerEventError) => { logger.error( - `${this.logPrefix()} ${moduleName}.messageHandler: Error occurred while handling '${msg.data.event}' event on worker:`, - msg.data + `${this.logPrefix()} ${moduleName}.start: Error occurred while handling '${eventError.event}' event on worker:`, + eventError ) } ) @@ -362,6 +363,7 @@ export class Bootstrap extends EventEmitter { this.emit(ChargingStationWorkerMessageEvents.performanceStatistics, msg.data) break case ChargingStationWorkerMessageEvents.addedWorkerElement: + this.emit(ChargingStationWorkerMessageEvents.addWorkerElement, msg.data) break case ChargingStationWorkerMessageEvents.workerElementError: this.emit(ChargingStationWorkerMessageEvents.workerElementError, msg.data) @@ -486,7 +488,11 @@ export class Bootstrap extends EventEmitter { } } - public async addChargingStation (index: number, stationTemplateFile: string): Promise { + public async addChargingStation ( + index: number, + stationTemplateFile: string, + options?: ChargingStationOptions + ): Promise { await this.workerImplementation?.addElement({ index, templateFile: join( @@ -494,7 +500,8 @@ export class Bootstrap extends EventEmitter { 'assets', 'station-templates', stationTemplateFile - ) + ), + options }) // eslint-disable-next-line @typescript-eslint/no-non-null-assertion this.chargingStationsByTemplate.get(parse(stationTemplateFile).name)!.lastIndex = max(