2020-02-19 04:55:06 +00:00
|
|
|
const _ = require('lodash');
|
|
|
|
const util = require('util');
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
|
|
|
|
PermissionError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = 'Permission Denied';
|
|
|
|
this.public = true;
|
|
|
|
this.status = 403;
|
|
|
|
},
|
|
|
|
|
|
|
|
ItemNotFoundError: function (id, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = 'Item Not Found - ' + id;
|
|
|
|
this.public = true;
|
|
|
|
this.status = 404;
|
|
|
|
},
|
|
|
|
|
|
|
|
AuthError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = message;
|
|
|
|
this.public = true;
|
|
|
|
this.status = 401;
|
|
|
|
},
|
|
|
|
|
|
|
|
InternalError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = message;
|
|
|
|
this.status = 500;
|
|
|
|
this.public = false;
|
|
|
|
},
|
|
|
|
|
|
|
|
InternalValidationError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = message;
|
|
|
|
this.status = 400;
|
|
|
|
this.public = false;
|
|
|
|
},
|
|
|
|
|
|
|
|
ConfigurationError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = message;
|
|
|
|
this.status = 400;
|
|
|
|
this.public = true;
|
|
|
|
},
|
|
|
|
|
|
|
|
CacheError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.message = message;
|
|
|
|
this.previous = previous;
|
|
|
|
this.status = 500;
|
|
|
|
this.public = false;
|
|
|
|
},
|
|
|
|
|
|
|
|
ValidationError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = message;
|
|
|
|
this.public = true;
|
|
|
|
this.status = 400;
|
|
|
|
},
|
|
|
|
|
|
|
|
AssertionFailedError: function (message, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = message;
|
|
|
|
this.public = false;
|
|
|
|
this.status = 400;
|
2024-01-18 02:26:55 +00:00
|
|
|
},
|
|
|
|
|
|
|
|
CommandError: function (stdErr, code, previous) {
|
|
|
|
Error.captureStackTrace(this, this.constructor);
|
|
|
|
this.name = this.constructor.name;
|
|
|
|
this.previous = previous;
|
|
|
|
this.message = stdErr;
|
|
|
|
this.code = code;
|
|
|
|
this.public = false;
|
|
|
|
},
|
2020-02-19 04:55:06 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
_.forEach(module.exports, function (error) {
|
|
|
|
util.inherits(error, Error);
|
|
|
|
});
|