X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2Fui-server%2Fui-services%2FUIService001.ts;h=598ebb269413c310b54e5a6072b939758e9e0e13;hb=7f77d16f956cd81a026a042ed440aaaba37b1c56;hp=5c9b7dc4dc4525dd177cb1040879d1f281c791c3;hpb=02a6943a30a9a6c93e5dcbdb79aa8d9746ae368e;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/ui-server/ui-services/UIService001.ts b/src/charging-station/ui-server/ui-services/UIService001.ts index 5c9b7dc4..598ebb26 100644 --- a/src/charging-station/ui-server/ui-services/UIService001.ts +++ b/src/charging-station/ui-server/ui-services/UIService001.ts @@ -1,72 +1,17 @@ -import { - ProcedureName, - ProtocolRequestHandler, - ProtocolVersion, - RequestPayload, - ResponsePayload, - ResponseStatus, -} from '../../../types/UIProtocol'; -import { - BroadcastChannelProcedureName, - BroadcastChannelRequestPayload, -} from '../../../types/WorkerBroadcastChannel'; -import { AbstractUIServer } from '../AbstractUIServer'; -import AbstractUIService from './AbstractUIService'; +import { AbstractUIService } from './AbstractUIService'; +import { type ProcedureName, type ProtocolRequestHandler, ProtocolVersion } from '../../../types'; +import type { AbstractUIServer } from '../AbstractUIServer'; -export default class UIService001 extends AbstractUIService { +export class UIService001 extends AbstractUIService { constructor(uiServer: AbstractUIServer) { super(uiServer, ProtocolVersion['0.0.1']); - this.requestHandlers.set( - ProcedureName.START_TRANSACTION, - this.handleStartTransaction.bind(this) as ProtocolRequestHandler - ); - this.requestHandlers.set( - ProcedureName.STOP_TRANSACTION, - this.handleStopTransaction.bind(this) as ProtocolRequestHandler - ); - this.requestHandlers.set( - ProcedureName.START_CHARGING_STATION, - this.handleStartChargingStation.bind(this) as ProtocolRequestHandler - ); - this.requestHandlers.set( - ProcedureName.STOP_CHARGING_STATION, - this.handleStopChargingStation.bind(this) as ProtocolRequestHandler - ); - } - - private handleStartTransaction(uuid: string, payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.START_TRANSACTION, - payload as BroadcastChannelRequestPayload, - ]); - return { status: ResponseStatus.SUCCESS }; - } - - private handleStopTransaction(uuid: string, payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.STOP_TRANSACTION, - payload as BroadcastChannelRequestPayload, - ]); - return { status: ResponseStatus.SUCCESS }; - } - - private handleStartChargingStation(uuid: string, payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.START_CHARGING_STATION, - payload as BroadcastChannelRequestPayload, - ]); - return { status: ResponseStatus.SUCCESS }; - } - - private handleStopChargingStation(uuid: string, payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.STOP_CHARGING_STATION, - payload as BroadcastChannelRequestPayload, - ]); - return { status: ResponseStatus.SUCCESS }; + for (const procedureName of Object.keys( + AbstractUIService.ProcedureNameToBroadCastChannelProcedureNameMap + ) as ProcedureName[]) { + this.requestHandlers.set( + procedureName, + this.handleProtocolRequest.bind(this) as ProtocolRequestHandler + ); + } } }