ProtocolRequestHandler,
ProtocolVersion,
RequestPayload,
- ResponsePayload,
- ResponseStatus,
} from '../../../types/UIProtocol';
-import {
- BroadcastChannelProcedureName,
- BroadcastChannelRequestPayload,
-} from '../../../types/WorkerBroadcastChannel';
-import { AbstractUIServer } from '../AbstractUIServer';
+import { BroadcastChannelProcedureName } from '../../../types/WorkerBroadcastChannel';
+import type { AbstractUIServer } from '../AbstractUIServer';
import AbstractUIService from './AbstractUIService';
export default 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.handleStopTransaction.bind(this) as ProtocolRequestHandler
);
this.requestHandlers.set(
- ProcedureName.START_CHARGING_STATION,
- this.handleStartChargingStation.bind(this) as ProtocolRequestHandler
+ ProcedureName.START_AUTOMATIC_TRANSACTION_GENERATOR,
+ this.handleStartAutomaticTransactionGenerator.bind(this) as ProtocolRequestHandler
);
this.requestHandlers.set(
- ProcedureName.STOP_CHARGING_STATION,
- this.handleStopChargingStation.bind(this) as ProtocolRequestHandler
+ ProcedureName.STOP_AUTOMATIC_TRANSACTION_GENERATOR,
+ this.handleStopAutomaticTransactionGenerator.bind(this) as ProtocolRequestHandler
+ );
+ this.requestHandlers.set(
+ ProcedureName.AUTHORIZE,
+ this.handleAuthorize.bind(this) as ProtocolRequestHandler
+ );
+ this.requestHandlers.set(
+ ProcedureName.STATUS_NOTIFICATION,
+ this.handleStatusNotification.bind(this) as ProtocolRequestHandler
+ );
+ this.requestHandlers.set(
+ ProcedureName.HEARTBEAT,
+ this.handleHeartbeat.bind(this) as ProtocolRequestHandler
);
}
- private handleStartTransaction(uuid: string, payload: RequestPayload): ResponsePayload {
- this.workerBroadcastChannel.sendRequest([
+ private handleStartChargingStation(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(
+ uuid,
+ BroadcastChannelProcedureName.START_CHARGING_STATION,
+ payload
+ );
+ }
+
+ private handleStopChargingStation(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(
+ uuid,
+ BroadcastChannelProcedureName.STOP_CHARGING_STATION,
+ payload
+ );
+ }
+
+ private handleOpenConnection(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(uuid, BroadcastChannelProcedureName.OPEN_CONNECTION, payload);
+ }
+
+ private handleCloseConnection(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(uuid, BroadcastChannelProcedureName.CLOSE_CONNECTION, payload);
+ }
+
+ private handleStartTransaction(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(
uuid,
BroadcastChannelProcedureName.START_TRANSACTION,
- payload as BroadcastChannelRequestPayload,
- ]);
- return { status: ResponseStatus.SUCCESS };
+ payload
+ );
+ }
+
+ private handleStopTransaction(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(uuid, BroadcastChannelProcedureName.STOP_TRANSACTION, payload);
}
- private handleStopTransaction(uuid: string, payload: RequestPayload): ResponsePayload {
- this.workerBroadcastChannel.sendRequest([
+ private handleStartAutomaticTransactionGenerator(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(
uuid,
- BroadcastChannelProcedureName.STOP_TRANSACTION,
- payload as BroadcastChannelRequestPayload,
- ]);
- return { status: ResponseStatus.SUCCESS };
+ BroadcastChannelProcedureName.START_AUTOMATIC_TRANSACTION_GENERATOR,
+ payload
+ );
}
- private handleStartChargingStation(uuid: string, payload: RequestPayload): ResponsePayload {
- this.workerBroadcastChannel.sendRequest([
+ private handleStopAutomaticTransactionGenerator(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(
uuid,
- BroadcastChannelProcedureName.START_CHARGING_STATION,
- payload as BroadcastChannelRequestPayload,
- ]);
- return { status: ResponseStatus.SUCCESS };
+ BroadcastChannelProcedureName.STOP_AUTOMATIC_TRANSACTION_GENERATOR,
+ payload
+ );
}
- private handleStopChargingStation(uuid: string, payload: RequestPayload): ResponsePayload {
- this.workerBroadcastChannel.sendRequest([
+ private handleAuthorize(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(uuid, BroadcastChannelProcedureName.AUTHORIZE, payload);
+ }
+
+ private handleStatusNotification(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(
uuid,
- BroadcastChannelProcedureName.STOP_CHARGING_STATION,
- payload as BroadcastChannelRequestPayload,
- ]);
- return { status: ResponseStatus.SUCCESS };
+ BroadcastChannelProcedureName.STATUS_NOTIFICATION,
+ payload
+ );
+ }
+
+ private handleHeartbeat(uuid: string, payload: RequestPayload): void {
+ this.sendBroadcastChannelRequest(uuid, BroadcastChannelProcedureName.HEARTBEAT, payload);
}
}