Fix build failure
[e-mobility-charging-stations-simulator.git] / src / charging-station / ocpp / OCPPRequestService.ts
index 000d8c0a426816ab43a9f058baf1a4d56d629bae..2ecc32ead8608248fac7b697d1c130cb8f0e4bd8 100644 (file)
@@ -6,7 +6,9 @@ import { ChargePointErrorCode } from '../../types/ocpp/ChargePointErrorCode';
 import { ChargePointStatus } from '../../types/ocpp/ChargePointStatus';
 import type ChargingStation from '../ChargingStation';
 import Constants from '../../utils/Constants';
+import { EmptyObject } from '../../types/EmptyObject';
 import { ErrorType } from '../../types/ocpp/ErrorType';
+import { HandleErrorParams } from '../../types/Error';
 import { JsonType } from '../../types/JsonType';
 import { MessageType } from '../../types/ocpp/MessageType';
 import { MeterValue } from '../../types/ocpp/MeterValues';
@@ -58,7 +60,7 @@ export default abstract class OCPPRequestService {
     try {
       return await this.internalSendMessage(messageId, messagePayload, MessageType.CALL_MESSAGE, commandName, params);
     } catch (error) {
-      this.handleRequestError(commandName, error as Error);
+      this.handleRequestError(commandName, error as Error, { throwError: false });
     }
   }
 
@@ -173,9 +175,11 @@ export default abstract class OCPPRequestService {
     return messageToSend;
   }
 
-  private handleRequestError(commandName: RequestCommand | IncomingRequestCommand, error: Error): void {
+  private handleRequestError(commandName: RequestCommand | IncomingRequestCommand, error: Error, params: HandleErrorParams<EmptyObject> = { throwError: true }): void {
     logger.error(this.chargingStation.logPrefix() + ' Request command %s error: %j', commandName, error);
-    throw error;
+    if (params?.throwError) {
+      throw error;
+    }
   }
 
   public abstract sendHeartbeat(params?: SendParams): Promise<void>;