-import { JsonType } from '../../../types/JsonType';
import {
ProcedureName,
ProtocolRequestHandler,
ProtocolVersion,
+ RequestPayload,
ResponsePayload,
ResponseStatus,
} from '../../../types/UIProtocol';
+import {
+ BroadcastChannelProcedureName,
+ BroadcastChannelRequestPayload,
+} from '../../../types/WorkerBroadcastChannel';
import { AbstractUIServer } from '../AbstractUIServer';
import AbstractUIService from './AbstractUIService';
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(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 handleStartTransaction(payload: JsonType): ResponsePayload {
- this.workerBroadcastChannel.postMessage([ProcedureName.START_TRANSACTION, payload]);
+ private handleStartChargingStation(uuid: string, payload: RequestPayload): ResponsePayload {
+ this.workerBroadcastChannel.sendRequest([
+ uuid,
+ BroadcastChannelProcedureName.START_CHARGING_STATION,
+ payload as BroadcastChannelRequestPayload,
+ ]);
return { status: ResponseStatus.SUCCESS };
}
- private handleStopTransaction(payload: JsonType): ResponsePayload {
- this.workerBroadcastChannel.postMessage([ProcedureName.STOP_TRANSACTION, payload]);
+ private handleStopChargingStation(uuid: string, payload: RequestPayload): ResponsePayload {
+ this.workerBroadcastChannel.sendRequest([
+ uuid,
+ BroadcastChannelProcedureName.STOP_CHARGING_STATION,
+ payload as BroadcastChannelRequestPayload,
+ ]);
return { status: ResponseStatus.SUCCESS };
}
}