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=94060b5e9b1efeac4fbbd63095fc28bfa444394c;hpb=89b7a234c161f2c68b6a9499ff698488e1a35c6b;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 94060b5e..598ebb26 100644 --- a/src/charging-station/ui-server/ui-services/UIService001.ts +++ b/src/charging-station/ui-server/ui-services/UIService001.ts @@ -1,70 +1,17 @@ -import { - ProcedureName, - ProtocolRequestHandler, - ProtocolVersion, - RequestPayload, - ResponsePayload, - ResponseStatus, -} from '../../../types/UIProtocol'; -import { BroadcastChannelProcedureName } from '../../../types/WorkerBroadcastChannel'; -import Utils from '../../../utils/Utils'; -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.messageHandlers.set( - ProcedureName.START_TRANSACTION, - this.handleStartTransaction.bind(this) as ProtocolRequestHandler - ); - this.messageHandlers.set( - ProcedureName.STOP_TRANSACTION, - this.handleStopTransaction.bind(this) as ProtocolRequestHandler - ); - this.messageHandlers.set( - ProcedureName.START_CHARGING_STATION, - this.handleStartChargingStation.bind(this) as ProtocolRequestHandler - ); - this.messageHandlers.set( - ProcedureName.STOP_CHARGING_STATION, - this.handleStopChargingStation.bind(this) as ProtocolRequestHandler - ); - } - - private handleStartTransaction(payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.postMessage([ - Utils.generateUUID(), - BroadcastChannelProcedureName.START_TRANSACTION, - payload, - ]); - return { status: ResponseStatus.SUCCESS }; - } - - private handleStopTransaction(payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.postMessage([ - Utils.generateUUID(), - BroadcastChannelProcedureName.STOP_TRANSACTION, - payload, - ]); - return { status: ResponseStatus.SUCCESS }; - } - - private handleStartChargingStation(payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.postMessage([ - Utils.generateUUID(), - BroadcastChannelProcedureName.START_CHARGING_STATION, - payload, - ]); - return { status: ResponseStatus.SUCCESS }; - } - - private handleStopChargingStation(payload: RequestPayload): ResponsePayload { - this.workerBroadcastChannel.postMessage([ - Utils.generateUUID(), - BroadcastChannelProcedureName.STOP_CHARGING_STATION, - payload, - ]); - return { status: ResponseStatus.SUCCESS }; + for (const procedureName of Object.keys( + AbstractUIService.ProcedureNameToBroadCastChannelProcedureNameMap + ) as ProcedureName[]) { + this.requestHandlers.set( + procedureName, + this.handleProtocolRequest.bind(this) as ProtocolRequestHandler + ); + } } }