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=8176772b54bd008ec587cda37546d72f8f611b91;hpb=4f69be046f99592d0cc9c190aa8957f7eff1c936;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 8176772b..598ebb26 100644 --- a/src/charging-station/ui-server/ui-services/UIService001.ts +++ b/src/charging-station/ui-server/ui-services/UIService001.ts @@ -1,114 +1,17 @@ -import { - ProcedureName, - ProtocolRequestHandler, - ProtocolVersion, - RequestPayload, -} from '../../../types/UIProtocol'; -import { - BroadcastChannelProcedureName, - BroadcastChannelRequestPayload, -} from '../../../types/WorkerBroadcastChannel'; +import { AbstractUIService } from './AbstractUIService'; +import { type ProcedureName, type ProtocolRequestHandler, ProtocolVersion } from '../../../types'; import type { AbstractUIServer } from '../AbstractUIServer'; -import AbstractUIService from './AbstractUIService'; -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_CHARGING_STATION, - this.handleStartChargingStation.bind(this) as ProtocolRequestHandler - ); - this.requestHandlers.set( - ProcedureName.STOP_CHARGING_STATION, - this.handleStopChargingStation.bind(this) as ProtocolRequestHandler - ); - this.requestHandlers.set( - ProcedureName.OPEN_CONNECTION, - this.handleOpenConnection.bind(this) as ProtocolRequestHandler - ); - this.requestHandlers.set( - ProcedureName.CLOSE_CONNECTION, - this.handleCloseConnection.bind(this) as ProtocolRequestHandler - ); - 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_AUTOMATIC_TRANSACTION_GENERATOR, - this.handleStartAutomaticTransactionGenerator.bind(this) as ProtocolRequestHandler - ); - this.requestHandlers.set( - ProcedureName.STOP_AUTOMATIC_TRANSACTION_GENERATOR, - this.handleStopAutomaticTransactionGenerator.bind(this) as ProtocolRequestHandler - ); - } - - private handleStartChargingStation(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.START_CHARGING_STATION, - payload as BroadcastChannelRequestPayload, - ]); - } - - private handleStopChargingStation(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.STOP_CHARGING_STATION, - payload as BroadcastChannelRequestPayload, - ]); - } - - private handleOpenConnection(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.OPEN_CONNECTION, - payload as BroadcastChannelRequestPayload, - ]); - } - - private handleCloseConnection(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.CLOSE_CONNECTION, - payload as BroadcastChannelRequestPayload, - ]); - } - - private handleStartTransaction(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.START_TRANSACTION, - payload as BroadcastChannelRequestPayload, - ]); - } - - private handleStopTransaction(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.STOP_TRANSACTION, - payload as BroadcastChannelRequestPayload, - ]); - } - - private handleStartAutomaticTransactionGenerator(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.START_AUTOMATIC_TRANSACTION_GENERATOR, - payload as BroadcastChannelRequestPayload, - ]); - } - - private handleStopAutomaticTransactionGenerator(uuid: string, payload: RequestPayload): void { - this.uiServiceWorkerBroadcastChannel.sendRequest([ - uuid, - BroadcastChannelProcedureName.STOP_AUTOMATIC_TRANSACTION_GENERATOR, - payload as BroadcastChannelRequestPayload, - ]); + for (const procedureName of Object.keys( + AbstractUIService.ProcedureNameToBroadCastChannelProcedureNameMap + ) as ProcedureName[]) { + this.requestHandlers.set( + procedureName, + this.handleProtocolRequest.bind(this) as ProtocolRequestHandler + ); + } } }