()
| 33 | } |
| 34 | |
| 35 | build(): void { |
| 36 | |
| 37 | let dinoContainer = DinoContainer.create({ |
| 38 | app: this.app, |
| 39 | raiseModelError: this.raiseModelError, |
| 40 | enableTaskContext: this.enableTaskContext, |
| 41 | routerCallback: this.useRouter, |
| 42 | baseUri: this.baseUri, |
| 43 | diContainer: this.diContainer, |
| 44 | diResolveCb: this.diResolveCallback |
| 45 | }); |
| 46 | |
| 47 | // attach dino property to response object on every request start |
| 48 | dinoContainer.builtInRequestStartMiddleware(DinoStartMiddleware); |
| 49 | |
| 50 | if (this.enableTaskContext) { |
| 51 | dinoContainer.builtInRequestStartMiddleware(TaskContextMiddleware); |
| 52 | } |
| 53 | |
| 54 | if (!DataUtility.isUndefinedOrNull(this.routeNotFoundMiddleware)) { |
| 55 | dinoContainer.routeNotFoundMiddleware(this.routeNotFoundMiddleware); |
| 56 | } |
| 57 | |
| 58 | for (const middleware of this.startMiddleware) { |
| 59 | dinoContainer.requestStartMiddleware(middleware); |
| 60 | } |
| 61 | |
| 62 | for (const controller of this.controllers) { |
| 63 | dinoContainer.registerController(controller); |
| 64 | } |
| 65 | |
| 66 | for (const middleware of this.endMiddleware) { |
| 67 | dinoContainer.requestEndMiddleware(middleware); |
| 68 | } |
| 69 | |
| 70 | // Note:- built-in RequestEndMiddleware must be registered |
| 71 | // after registering user requestEndMiddlewares |
| 72 | |
| 73 | // register built-in RequestEndMiddleware |
| 74 | dinoContainer.builtInRequestEndMiddleware(HttpResponseMessageMiddleware); |
| 75 | |
| 76 | // register ResponseEndMiddleware as the last built-in RequestEndMiddleware |
| 77 | dinoContainer.builtInRequestEndMiddleware(ResponseEndMiddleware); |
| 78 | |
| 79 | for (const middleware of this.errorMiddleware) { |
| 80 | dinoContainer.registerErrorMiddleware(middleware); |
| 81 | } |
| 82 | |
| 83 | // Note:- built-in ErrorMiddleware must be registered |
| 84 | // after registering user ErrorMiddlewares |
| 85 | |
| 86 | dinoContainer.builtInErrorMiddleware(RouteExceptionMiddleware); |
| 87 | dinoContainer.builtInErrorMiddleware(HttpResponseExceptionMiddleware); |
| 88 | dinoContainer.builtInErrorMiddleware(ActionParamExceptionMiddleware); |
| 89 | |
| 90 | // Register the application error controller |
| 91 | // This would be the last error middleware to handle error object |
| 92 | // make sure to register only after registering ErrorMiddleWares |
nothing calls this directly
no test coverage detected