X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2Fui-server%2Fui-services%2FUIService001.ts;h=d4f59ebc5e71746f609492e27d2042ca9be16101;hb=cdbdcaebf6bf64acd95020ab1028a16a53f8308b;hp=e322ef003dfc28dec225f3fa1a036b10e94563aa;hpb=32de5a575189d226213641f5ee36004f8454cb50;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 e322ef00..d4f59ebc 100644 --- a/src/charging-station/ui-server/ui-services/UIService001.ts +++ b/src/charging-station/ui-server/ui-services/UIService001.ts @@ -1,34 +1,66 @@ -import { JsonType } from '../../../types/JsonType'; import { ProcedureName, ProtocolRequestHandler, ProtocolVersion, - ResponsePayload, - ResponseStatus, + RequestPayload, } from '../../../types/UIProtocol'; +import { + BroadcastChannelProcedureName, + BroadcastChannelRequestPayload, +} from '../../../types/WorkerBroadcastChannel'; import { AbstractUIServer } from '../AbstractUIServer'; import AbstractUIService from './AbstractUIService'; export default class UIService001 extends AbstractUIService { constructor(uiServer: AbstractUIServer) { super(uiServer, ProtocolVersion['0.0.1']); - this.messageHandlers.set( + this.requestHandlers.set( ProcedureName.START_TRANSACTION, this.handleStartTransaction.bind(this) as ProtocolRequestHandler ); - this.messageHandlers.set( + 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): 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 handleStartTransaction(payload: JsonType): ResponsePayload { - this.workerBroadcastChannel.postMessage([ProcedureName.START_TRANSACTION, payload]); - return { status: ResponseStatus.SUCCESS }; + private handleStartChargingStation(uuid: string, payload: RequestPayload): void { + this.uiServiceWorkerBroadcastChannel.sendRequest([ + uuid, + BroadcastChannelProcedureName.START_CHARGING_STATION, + payload as BroadcastChannelRequestPayload, + ]); } - private handleStopTransaction(payload: JsonType): ResponsePayload { - this.workerBroadcastChannel.postMessage([ProcedureName.STOP_TRANSACTION, payload]); - return { status: ResponseStatus.SUCCESS }; + private handleStopChargingStation(uuid: string, payload: RequestPayload): void { + this.uiServiceWorkerBroadcastChannel.sendRequest([ + uuid, + BroadcastChannelProcedureName.STOP_CHARGING_STATION, + payload as BroadcastChannelRequestPayload, + ]); } }