@serafin/pipeline
Version:
CRUD data access library with a functional approach
57 lines • 2.92 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.movedPermanentlyError = exports.MovedPermanentlyErrorName = exports.forbiddenError = exports.ForbiddenErrorName = exports.unauthorizedError = exports.UnauthorizedErrorName = exports.notImplementedError = exports.NotImplementedErrorName = exports.conflictError = exports.ConflictErrorName = exports.validationError = exports.ValidationErrorName = exports.notFoundError = exports.NotFoundErrorName = exports.error = void 0;
const verror_1 = __importDefault(require("verror"));
function error(name, message, info, cause) {
let opt = {
name: name,
constructorOpt: error,
};
if (cause) {
opt.cause = cause;
}
if (info) {
opt.info = info;
}
return new verror_1.default(opt, "%s", message);
}
exports.error = error;
exports.NotFoundErrorName = "SerafinNotFoundError";
function notFoundError(id, info, cause) {
return error(exports.NotFoundErrorName, `The entity ${id} does not exist.`, info, cause);
}
exports.notFoundError = notFoundError;
exports.ValidationErrorName = "SerafinSchemaValidationError";
function validationError(validationError, info, cause) {
return error(exports.ValidationErrorName, `Invalid parameters: ${validationError}`, info, cause);
}
exports.validationError = validationError;
exports.ConflictErrorName = "SerafinConflictError";
function conflictError(id, info, cause) {
return error(exports.ConflictErrorName, `The modifications to the entity ${id} failed because of a conflict.`, info, cause);
}
exports.conflictError = conflictError;
exports.NotImplementedErrorName = "SerafinNotImplementedError";
function notImplementedError(method, sourceName, info, cause) {
return error(exports.NotImplementedErrorName, `The method '${method}' can't be called because it's not implemented by ${sourceName}`, info, cause);
}
exports.notImplementedError = notImplementedError;
exports.UnauthorizedErrorName = "SerafinUnauthorizedError";
function unauthorizedError(reason, info, cause) {
return error(exports.UnauthorizedErrorName, `Action not authorized : ${reason}`, info, cause);
}
exports.unauthorizedError = unauthorizedError;
exports.ForbiddenErrorName = "SerafinForbiddenError";
function forbiddenError(reason, info, cause) {
return error(exports.ForbiddenErrorName, `Action forbidden : ${reason}`, info, cause);
}
exports.forbiddenError = forbiddenError;
exports.MovedPermanentlyErrorName = "SerafinMovedPermanentlyError";
function movedPermanentlyError(newResource, info, cause) {
return error(exports.MovedPermanentlyErrorName, `The resource has been moved permanently to '${newResource}'`, info, cause);
}
exports.movedPermanentlyError = movedPermanentlyError;
//# sourceMappingURL=error.js.map