-// Partial Copyright Jerome Benoit. 2021. All Rights Reserved.
+// Partial Copyright Jerome Benoit. 2021-2024. All Rights Reserved.
-import { IncomingRequestCommand, RequestCommand } from '../types/ocpp/Requests';
+import { BaseError } from './BaseError.js'
+import type { ErrorType, IncomingRequestCommand, JsonType, RequestCommand } from '../types/index.js'
+import { Constants } from '../utils/index.js'
-import BaseError from './BaseError';
-import { ErrorType } from '../types/ocpp/ErrorType';
+export class OCPPError extends BaseError {
+ code: ErrorType
+ command: RequestCommand | IncomingRequestCommand
+ details?: JsonType
-export default class OCPPError extends BaseError {
- code: ErrorType | IncomingRequestCommand;
- command?: RequestCommand | IncomingRequestCommand;
- details?: Record<string, unknown>;
+ constructor (
+ code: ErrorType,
+ message: string,
+ command?: RequestCommand | IncomingRequestCommand,
+ details?: JsonType
+ ) {
+ super(message)
- constructor(code: ErrorType | IncomingRequestCommand, message: string, command?: RequestCommand | IncomingRequestCommand, details?: Record<string, unknown>) {
- super(message);
-
- this.code = code ?? ErrorType.GENERIC_ERROR;
- this.command = command;
- this.details = details ?? {};
+ this.code = code
+ this.command = command ?? Constants.UNKNOWN_COMMAND
+ this.details = details
}
}