1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00
pigallery2/backend/routes/ErrorRouter.ts

32 lines
844 B
TypeScript
Raw Normal View History

import {RenderingMWs} from "../middlewares/RenderingMWs";
2017-07-15 18:47:11 +08:00
import {ErrorCodes, ErrorDTO} from "../../common/entities/Error";
2017-06-04 21:25:08 +08:00
import {Logger} from "../Logger";
2016-12-27 06:36:38 +08:00
import Request = Express.Request;
import Response = Express.Response;
2016-05-09 23:04:56 +08:00
export class ErrorRouter {
public static route(app: any) {
this.addApiErrorHandler(app);
this.addGenericHandler(app);
}
private static addApiErrorHandler(app) {
app.use("/api/*",
RenderingMWs.renderError
);
};
private static addGenericHandler(app) {
app.use((err: any, req: Request, res: Response, next: Function) => {
//Flush out the stack to the console
2017-07-18 05:12:12 +08:00
Logger.error("Unexpected error:");
console.error(err);
2017-07-15 18:47:11 +08:00
next(new ErrorDTO(ErrorCodes.SERVER_ERROR, "Unknown server side error", err));
},
RenderingMWs.renderError
);
}
}