20 lines
636 B
TypeScript
20 lines
636 B
TypeScript
|
import { Logger } from '@adonisjs/core/logger';
|
||
|
import { HttpContext } from '@adonisjs/core/http';
|
||
|
import { NextFn } from '@adonisjs/core/types/http';
|
||
|
|
||
|
/**
|
||
|
* The container bindings middleware binds classes to their request
|
||
|
* specific value using the container resolver.
|
||
|
*
|
||
|
* - We bind "HttpContext" class to the "ctx" object
|
||
|
* - And bind "Logger" class to the "ctx.logger" object
|
||
|
*/
|
||
|
export default class ContainerBindingsMiddleware {
|
||
|
handle(ctx: HttpContext, next: NextFn) {
|
||
|
ctx.containerResolver.bindValue(HttpContext, ctx);
|
||
|
ctx.containerResolver.bindValue(Logger, ctx.logger);
|
||
|
|
||
|
return next();
|
||
|
}
|
||
|
}
|