- public abstract handleRequest(messageId: string, commandName: IncomingRequestCommand, commandPayload: JsonType): Promise<void>;
+ protected handleIncomingRequestError<T>(
+ chargingStation: ChargingStation,
+ commandName: IncomingRequestCommand,
+ error: Error,
+ params: HandleErrorParams<T> = { throwError: true }
+ ): T {
+ logger.error(
+ chargingStation.logPrefix() + ' Incoming request command %s error: %j',
+ commandName,
+ error
+ );
+ if (!params?.throwError && params?.errorResponse) {
+ return params?.errorResponse;
+ }
+ if (params?.throwError && !params?.errorResponse) {
+ throw error;
+ }
+ if (params?.throwError && params?.errorResponse) {
+ return params?.errorResponse;
+ }
+ }
+
+ public abstract incomingRequestHandler(
+ chargingStation: ChargingStation,
+ messageId: string,
+ commandName: IncomingRequestCommand,
+ commandPayload: JsonType
+ ): Promise<void>;