From a95b7dfa96df20db668ae0416e9292ab468deca5 Mon Sep 17 00:00:00 2001 From: Mihailo Vlajkovic Date: Fri, 2 Jun 2023 18:51:40 +0200 Subject: [PATCH] Set this.name in all error classes Signed-off-by: Mihailo Vlajkovic --- .changeset/dirty-wasps-draw.md | 2 +- packages/errors/src/errors/CustomErrorBase.ts | 5 ++-- packages/errors/src/errors/common.ts | 25 +++++++++++++------ 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/.changeset/dirty-wasps-draw.md b/.changeset/dirty-wasps-draw.md index 89857259fb..5686191cab 100644 --- a/.changeset/dirty-wasps-draw.md +++ b/.changeset/dirty-wasps-draw.md @@ -2,4 +2,4 @@ '@backstage/errors': patch --- -Added a new parameter "name" to "CustomErrorBase" and updated all the existing extensions to use it +Set `this.name` in all error classes that extend `CustomErrorBase` class to their actual name diff --git a/packages/errors/src/errors/CustomErrorBase.ts b/packages/errors/src/errors/CustomErrorBase.ts index 03bee4b4d9..c7990080c5 100644 --- a/packages/errors/src/errors/CustomErrorBase.ts +++ b/packages/errors/src/errors/CustomErrorBase.ts @@ -19,7 +19,6 @@ import { isError } from './assertion'; /** * A base class that custom Error classes can inherit from. - * @param name This is useful when you extend this base class to pass a custom name that will be included in the error message * * @public * @example @@ -39,7 +38,7 @@ export class CustomErrorBase extends Error { */ readonly cause?: Error | undefined; - constructor(message?: string, cause?: Error | unknown, name?: string) { + constructor(message?: string, cause?: Error | unknown) { let fullMessage = message; if (cause !== undefined) { const causeStr = stringifyError(cause); @@ -54,7 +53,7 @@ export class CustomErrorBase extends Error { Error.captureStackTrace?.(this, this.constructor); - this.name = name || 'CustomErrorBase'; + this.name = 'CustomErrorBase'; this.cause = isError(cause) ? cause : undefined; } } diff --git a/packages/errors/src/errors/common.ts b/packages/errors/src/errors/common.ts index e8663490f6..11b0056f69 100644 --- a/packages/errors/src/errors/common.ts +++ b/packages/errors/src/errors/common.ts @@ -35,7 +35,8 @@ import { CustomErrorBase } from './CustomErrorBase'; */ export class InputError extends CustomErrorBase { constructor(message?: string, cause?: Error | unknown) { - super(message, cause, 'InputError'); + super(message, cause); + this.name = 'InputError'; } } @@ -46,7 +47,8 @@ export class InputError extends CustomErrorBase { */ export class AuthenticationError extends CustomErrorBase { constructor(message?: string, cause?: Error | unknown) { - super(message, cause, 'AuthenticationError'); + super(message, cause); + this.name = 'AuthenticationError'; } } @@ -57,7 +59,8 @@ export class AuthenticationError extends CustomErrorBase { */ export class NotAllowedError extends CustomErrorBase { constructor(message?: string, cause?: Error | unknown) { - super(message, cause, 'NotAllowedError'); + super(message, cause); + this.name = 'NotAllowedError'; } } @@ -71,7 +74,8 @@ export class NotAllowedError extends CustomErrorBase { */ export class NotFoundError extends CustomErrorBase { constructor(message?: string, cause?: Error | unknown) { - super(message, cause, 'NotFoundError'); + super(message, cause); + this.name = 'NotFoundError'; } } @@ -83,7 +87,8 @@ export class NotFoundError extends CustomErrorBase { */ export class ConflictError extends CustomErrorBase { constructor(message?: string, cause?: Error | unknown) { - super(message, cause, 'ConflictError'); + super(message, cause); + this.name = 'ConflictError'; } } @@ -94,7 +99,8 @@ export class ConflictError extends CustomErrorBase { */ export class NotModifiedError extends CustomErrorBase { constructor(message?: string, cause?: Error | unknown) { - super(message, cause, 'NotModifiedError'); + super(message, cause); + this.name = 'NotModifiedError'; } } @@ -105,7 +111,8 @@ export class NotModifiedError extends CustomErrorBase { */ export class NotImplementedError extends CustomErrorBase { constructor(message?: string, cause?: Error | unknown) { - super(message, cause, 'NotImplementedError'); + super(message, cause); + this.name = 'NotImplementedError'; } } @@ -126,6 +133,8 @@ export class ServiceUnavailableError extends CustomErrorBase {} */ export class ForwardedError extends CustomErrorBase { constructor(message: string, cause: Error | unknown) { - super(message, cause, isError(cause) ? cause.name : 'Error'); + super(message, cause); + + this.name = isError(cause) ? cause.name : 'Error'; } }