Cleanup
[e-mobility-charging-stations-simulator.git] / src / charging-station / ocpp / OCPPIncomingRequestService.ts
CommitLineData
c0560973
JB
1import ChargingStation from '../ChargingStation';
2import { IncomingRequestCommand } from '../../types/ocpp/Requests';
47e22477 3import logger from '../../utils/Logger';
c0560973
JB
4
5export default abstract class OCPPIncomingRequestService {
6 protected chargingStation: ChargingStation;
7
8 constructor(chargingStation: ChargingStation) {
9 this.chargingStation = chargingStation;
10 }
11
d4bc21e0 12 protected handleIncomingRequestError<T>(commandName: IncomingRequestCommand, error: Error, errorOcppResponse?: T): T {
47e22477 13 logger.error(this.chargingStation.logPrefix() + ' Incoming request command ' + commandName + ' error: %j', error);
6c5fc6c3
JB
14 if (errorOcppResponse) {
15 return errorOcppResponse;
e64c0923 16 }
47e22477
JB
17 throw error;
18 }
19
c0560973
JB
20 public abstract handleRequest(messageId: string, commandName: IncomingRequestCommand, commandPayload: Record<string, unknown>): Promise<void>;
21}