this.ajv = new Ajv();
ajvFormats(this.ajv);
this.requestHandler.bind(this);
+ this.sendMessage.bind(this);
this.sendResponse.bind(this);
this.sendError.bind(this);
this.internalSendMessage.bind(this);
commandName
);
} catch (error) {
- this.handleRequestError(chargingStation, commandName, error as Error);
+ this.handleSendMessageError(chargingStation, commandName, error as Error, {
+ throwError: true,
+ });
}
}
commandName
);
} catch (error) {
- this.handleRequestError(chargingStation, commandName, error as Error);
+ this.handleSendMessageError(chargingStation, commandName, error as Error);
}
}
params
);
} catch (error) {
- this.handleRequestError(chargingStation, commandName, error as Error, { throwError: false });
+ this.handleSendMessageError(chargingStation, commandName, error as Error);
}
}
`${chargingStation.logPrefix()} ${moduleName}.validateRequestPayload: Request PDU is invalid: %j`,
validate.errors
);
+ // OCPPError usage here is debatable: it's an error in the OCPP stack but not targeted to sendError().
throw new OCPPError(
OCPPServiceUtils.ajvErrorsToErrorType(validate.errors),
'Request PDU is invalid',
}
}
- private handleRequestError(
+ private handleSendMessageError(
chargingStation: ChargingStation,
commandName: RequestCommand | IncomingRequestCommand,
error: Error,
- params: HandleErrorParams<EmptyObject> = { throwError: true }
+ params: HandleErrorParams<EmptyObject> = { throwError: false }
): void {
logger.error(`${chargingStation.logPrefix()} Request command '${commandName}' error:`, error);
- if (params?.throwError) {
+ if (params?.throwError === true) {
throw error;
}
}