41 lines
1.1 KiB
TypeScript
41 lines
1.1 KiB
TypeScript
|
import type { ApplicationContract } from '@ioc:Adonis/Core/Application'
|
||
|
|
||
|
/*
|
||
|
|--------------------------------------------------------------------------
|
||
|
| Provider
|
||
|
|--------------------------------------------------------------------------
|
||
|
|
|
||
|
| Your application is not ready when this file is loaded by the framework.
|
||
|
| Hence, the top level imports relying on the IoC container will not work.
|
||
|
| You must import them inside the life-cycle methods defined inside
|
||
|
| the provider class.
|
||
|
|
|
||
|
| @example:
|
||
|
|
|
||
|
| public async ready () {
|
||
|
| const Database = this.app.container.resolveBinding('Adonis/Lucid/Database')
|
||
|
| const Event = this.app.container.resolveBinding('Adonis/Core/Event')
|
||
|
| Event.on('db:query', Database.prettyPrint)
|
||
|
| }
|
||
|
|
|
||
|
*/
|
||
|
export default class DoiProvider {
|
||
|
constructor(protected app: ApplicationContract) {}
|
||
|
|
||
|
public register() {
|
||
|
// Register your own bindings
|
||
|
}
|
||
|
|
||
|
public async boot() {
|
||
|
// All bindings are ready, feel free to use them
|
||
|
}
|
||
|
|
||
|
public async ready() {
|
||
|
// App is ready
|
||
|
}
|
||
|
|
||
|
public async shutdown() {
|
||
|
// Cleanup, since app is going down
|
||
|
}
|
||
|
}
|