X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=inline;f=src%2Fcharging-station%2FAutomaticTransactionGenerator.ts;h=dddfc045c9a80aba7e56ab3e985727188bbd6f87;hb=1629a152f62235ed9b23198dfee162ee30f75f89;hp=877339c2da8069e1a9fa5db799bffb0b864d1642;hpb=734d790d9983a43c20f9ffa728f18825625e8119;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/AutomaticTransactionGenerator.ts b/src/charging-station/AutomaticTransactionGenerator.ts index 877339c2..dddfc045 100644 --- a/src/charging-station/AutomaticTransactionGenerator.ts +++ b/src/charging-station/AutomaticTransactionGenerator.ts @@ -11,8 +11,8 @@ import logger from '../utils/Logger'; export default class AutomaticTransactionGenerator { public started: boolean; - private chargingStation: ChargingStation; - private connectorsStatus: Map; + private readonly chargingStation: ChargingStation; + private readonly connectorsStatus: Map; constructor(chargingStation: ChargingStation) { this.chargingStation = chargingStation; @@ -40,6 +40,9 @@ export default class AutomaticTransactionGenerator { } private startConnectors(): void { + if (this.connectorsStatus?.size > 0 && this.connectorsStatus.size !== this.chargingStation.getNumberOfConnectors()) { + this.connectorsStatus.clear(); + } for (const connectorId of this.chargingStation.connectors.keys()) { if (connectorId > 0) { this.startConnector(connectorId); @@ -63,8 +66,8 @@ export default class AutomaticTransactionGenerator { this.stopConnector(connectorId); break; } - if (!this.chargingStation.isRegistered()) { - logger.error(this.logPrefix(connectorId) + ' entered in transaction loop while the charging station is not registered'); + if (!this.chargingStation.isInAcceptedState()) { + logger.error(this.logPrefix(connectorId) + ' entered in transaction loop while the charging station is not in accepted state'); this.stopConnector(connectorId); break; }