1 | const BaseError = require('./BaseError');
|
2 |
|
3 | const SpurErrors = {
|
4 | BaseError,
|
5 |
|
6 | ValidationError: BaseError.extend(400, 'Validation Error', 'validation_error'),
|
7 | UnauthorizedError: BaseError.extend(401, 'Unauthorized Error', 'unauthorized_error'),
|
8 | ForbiddenError: BaseError.extend(403, 'Forbidden Error', 'forbidden_error'),
|
9 | NotFoundError: BaseError.extend(404, 'Not Found Error', 'not_found_error'),
|
10 | MethodNotAllowedError: BaseError.extend(405, 'Method Not Allowed', 'method_not_allowed_error'),
|
11 | RequestTimeoutError: BaseError.extend(408, 'Request Timeout Error', 'request_timeout_error'),
|
12 | AlreadyExistsError: BaseError.extend(409, 'Already Exists Error', 'already_exists_error'),
|
13 | InternalServerError: BaseError.extend(500, 'Internal Server Error', 'internal_server_error'),
|
14 | BadGatewayError: BaseError.extend(502, 'Bad Gateway Error', 'bad_gateway_error'),
|
15 | ServiceUnavailableError: BaseError.extend(503, 'Service Unavailable Error', 'service_unavailable_error'),
|
16 | GatewayTimeoutError: BaseError.extend(504, 'Gateway Timeout Error', 'gateway_timeout_error'),
|
17 |
|
18 | errorByStatusCode(statusCode) {
|
19 | const errorNames = Object.keys(SpurErrors);
|
20 | let spurError;
|
21 | errorNames.forEach((name) => {
|
22 | const error = SpurErrors[name];
|
23 | if (error.statusCode === statusCode) {
|
24 | spurError = error;
|
25 | }
|
26 | });
|
27 | return spurError;
|
28 | }
|
29 | };
|
30 |
|
31 | module.exports = SpurErrors;
|