19 lines
646 B
TypeScript
19 lines
646 B
TypeScript
|
import { HttpContext } from "@adonisjs/core/http"
|
||
|
import { Logger } from "@adonisjs/core/logger"
|
||
|
import type { 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 {
|
||
|
public async handle(ctx: HttpContext, next: NextFn): Promise<void> {
|
||
|
ctx.containerResolver.bindValue(HttpContext, ctx)
|
||
|
ctx.containerResolver.bindValue(Logger, ctx.logger)
|
||
|
|
||
|
return next()
|
||
|
}
|
||
|
}
|