From: Jérôme Benoit Date: Sun, 29 Mar 2026 10:56:29 +0000 (+0200) Subject: refactor: simplify getNumberOfReservableConnectors using iterateConnectors X-Git-Tag: ocpp-server@v4.0.3~1 X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=58012bcb63273480005bd42a80842d636ade3ae5;p=e-mobility-charging-stations-simulator.git refactor: simplify getNumberOfReservableConnectors using iterateConnectors Replace standalone getNumberOfReservableConnectors helper with inline iterateConnectors(true).reduce(), matching the pattern already used by getNumberOfConnectors and getNumberOfRunningTransactions. Remove the now-unused helper from Helpers.ts. --- diff --git a/src/charging-station/ChargingStation.ts b/src/charging-station/ChargingStation.ts index a1b145a8..a14addfb 100644 --- a/src/charging-station/ChargingStation.ts +++ b/src/charging-station/ChargingStation.ts @@ -133,7 +133,6 @@ import { getIdTagsFile, getMaxNumberOfEvses, getMessageTypeString, - getNumberOfReservableConnectors, getPhaseRotationValue, hasFeatureProfile, hasReservationExpired, @@ -1425,15 +1424,13 @@ export class ChargingStation extends EventEmitter { } private getNumberOfReservableConnectors (): number { - let numberOfReservableConnectors = 0 - if (this.hasEvses) { - for (const evseStatus of this.evses.values()) { - numberOfReservableConnectors += getNumberOfReservableConnectors(evseStatus.connectors) - } - } else { - numberOfReservableConnectors = getNumberOfReservableConnectors(this.connectors) - } - return numberOfReservableConnectors - this.getNumberOfReservationsOnConnectorZero() + return ( + this.iterateConnectors(true).reduce( + (count, { connectorStatus }) => + connectorStatus.status === ConnectorStatusEnum.Available ? count + 1 : count, + 0 + ) - this.getNumberOfReservationsOnConnectorZero() + ) } private getNumberOfReservationsOnConnectorZero (): number { diff --git a/src/charging-station/Helpers.ts b/src/charging-station/Helpers.ts index 0f498689..f162d7c4 100644 --- a/src/charging-station/Helpers.ts +++ b/src/charging-station/Helpers.ts @@ -159,21 +159,6 @@ export const removeExpiredReservations = async ( } } -export const getNumberOfReservableConnectors = ( - connectors: Map -): number => { - let numberOfReservableConnectors = 0 - for (const [connectorId, connectorStatus] of connectors) { - if (connectorId === 0) { - continue - } - if (connectorStatus.status === ConnectorStatusEnum.Available) { - ++numberOfReservableConnectors - } - } - return numberOfReservableConnectors -} - export const getHashId = (index: number, stationTemplate: ChargingStationTemplate): string => { const chargingStationInfo = { chargePointModel: stationTemplate.chargePointModel,