X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2Focpp%2F2.0%2FOCPP20Constants.ts;h=7acf7aef03ba32df4c3631a91d7ffff164b556ac;hb=8f46463be058ed68cc4cc962c51722f7e3b55c54;hp=58a1004ca90ab7a128bbe03c941c797578800408;hpb=48b750721134de072049b7d2d7ea94e69428721f;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/ocpp/2.0/OCPP20Constants.ts b/src/charging-station/ocpp/2.0/OCPP20Constants.ts index 58a1004c..7acf7aef 100644 --- a/src/charging-station/ocpp/2.0/OCPP20Constants.ts +++ b/src/charging-station/ocpp/2.0/OCPP20Constants.ts @@ -1,69 +1,94 @@ -import { OCPP20ConnectorStatusEnumType } from '../../../types'; -import { OCPPConstants } from '../internal'; - -type Transition = { from?: OCPP20ConnectorStatusEnumType; to: OCPP20ConnectorStatusEnumType }; +import { + type ConnectorStatusTransition, + OCPP20ConnectorStatusEnumType +} from '../../../types/index.js' +import { OCPPConstants } from '../OCPPConstants.js' export class OCPP20Constants extends OCPPConstants { - static readonly ChargingStationStatusTransitions: Transition[] = [ - { to: OCPP20ConnectorStatusEnumType.Available }, - // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available }, - { - from: OCPP20ConnectorStatusEnumType.Available, - to: OCPP20ConnectorStatusEnumType.Unavailable, - }, - { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Faulted }, - { to: OCPP20ConnectorStatusEnumType.Unavailable }, - { - from: OCPP20ConnectorStatusEnumType.Unavailable, - to: OCPP20ConnectorStatusEnumType.Available, - }, - // { - // from: OCPP20ConnectorStatusEnumType.Unavailable, - // to: OCPP20ConnectorStatusEnumType.Unavailable, - // }, - { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Faulted }, - { to: OCPP20ConnectorStatusEnumType.Faulted }, - { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Available }, - { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Unavailable }, - // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted }, - ]; + static readonly ChargingStationStatusTransitions: Readonly = + Object.freeze([ + { to: OCPP20ConnectorStatusEnumType.Available }, + // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available }, + { + from: OCPP20ConnectorStatusEnumType.Available, + to: OCPP20ConnectorStatusEnumType.Unavailable + }, + { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Faulted }, + { to: OCPP20ConnectorStatusEnumType.Unavailable }, + { + from: OCPP20ConnectorStatusEnumType.Unavailable, + to: OCPP20ConnectorStatusEnumType.Available + }, + // { + // from: OCPP20ConnectorStatusEnumType.Unavailable, + // to: OCPP20ConnectorStatusEnumType.Unavailable + // }, + { + from: OCPP20ConnectorStatusEnumType.Unavailable, + to: OCPP20ConnectorStatusEnumType.Faulted + }, + { to: OCPP20ConnectorStatusEnumType.Faulted }, + { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Available }, + { + from: OCPP20ConnectorStatusEnumType.Faulted, + to: OCPP20ConnectorStatusEnumType.Unavailable + } + // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted } + ]) - static readonly ConnectorStatusTransitions: Transition[] = [ - { to: OCPP20ConnectorStatusEnumType.Available }, - // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available }, - { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Occupied }, - { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Reserved }, - { - from: OCPP20ConnectorStatusEnumType.Available, - to: OCPP20ConnectorStatusEnumType.Unavailable, - }, - { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Faulted }, - // { to: OCPP20ConnectorStatusEnumType.Occupied }, - { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Available }, - // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Occupied }, - // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Reserved }, - { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Unavailable }, - { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Faulted }, - // { to: OCPP20ConnectorStatusEnumType.Reserved }, - { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Available }, - { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Occupied }, - // { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Reserved }, - { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Unavailable }, - { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Faulted }, - { to: OCPP20ConnectorStatusEnumType.Unavailable }, - { - from: OCPP20ConnectorStatusEnumType.Unavailable, - to: OCPP20ConnectorStatusEnumType.Available, - }, - { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Occupied }, - // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Reserved }, - // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Unavailable }, - { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Faulted }, - { to: OCPP20ConnectorStatusEnumType.Faulted }, - { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Available }, - { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Occupied }, - { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Reserved }, - { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Unavailable }, - // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted }, - ]; + static readonly ConnectorStatusTransitions: Readonly = Object.freeze( + [ + { to: OCPP20ConnectorStatusEnumType.Available }, + // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available }, + { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Occupied }, + { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Reserved }, + { + from: OCPP20ConnectorStatusEnumType.Available, + to: OCPP20ConnectorStatusEnumType.Unavailable + }, + { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Faulted }, + // { to: OCPP20ConnectorStatusEnumType.Occupied }, + { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Available }, + // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Occupied }, + // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Reserved }, + { + from: OCPP20ConnectorStatusEnumType.Occupied, + to: OCPP20ConnectorStatusEnumType.Unavailable + }, + { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Faulted }, + // { to: OCPP20ConnectorStatusEnumType.Reserved }, + { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Available }, + { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Occupied }, + // { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Reserved }, + { + from: OCPP20ConnectorStatusEnumType.Reserved, + to: OCPP20ConnectorStatusEnumType.Unavailable + }, + { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Faulted }, + { to: OCPP20ConnectorStatusEnumType.Unavailable }, + { + from: OCPP20ConnectorStatusEnumType.Unavailable, + to: OCPP20ConnectorStatusEnumType.Available + }, + { + from: OCPP20ConnectorStatusEnumType.Unavailable, + to: OCPP20ConnectorStatusEnumType.Occupied + }, + // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Reserved }, + // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Unavailable }, + { + from: OCPP20ConnectorStatusEnumType.Unavailable, + to: OCPP20ConnectorStatusEnumType.Faulted + }, + { to: OCPP20ConnectorStatusEnumType.Faulted }, + { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Available }, + { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Occupied }, + { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Reserved }, + { + from: OCPP20ConnectorStatusEnumType.Faulted, + to: OCPP20ConnectorStatusEnumType.Unavailable + } + // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted } + ] + ) }