23 lines
837 B
TypeScript
23 lines
837 B
TypeScript
/**
|
|
* Error thrown when the maximum number of retries is hit in an exponential backoff
|
|
*/
|
|
export class ExponentialBackoffMaxRetriesHitError extends Error {
|
|
constructor(errors: Array<Error>) {
|
|
super('Exponential backoff: Max retries hit', { cause: errors });
|
|
this.name = 'ExponentialBackoffMaxRetriesHitError';
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Error thrown when the exponential backoff retries are stopped
|
|
*/
|
|
export class ExponentialBackoffStoppedRetriesError extends Error {
|
|
constructor(reason: unknown) {
|
|
// Convert the reason to an error if it is not an error
|
|
const reasonError = reason instanceof Error ? reason : new Error(`${reason}`);
|
|
|
|
super(`Exponential backoff was aborted: "${reasonError.message}"`, { cause: reasonError });
|
|
this.name = 'ExponentialBackoffStoppedRetriesError';
|
|
}
|
|
}
|