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