const mixinafIoc::DependencyProvider
afIoc::DependencyProvider
Implement to provide your own dependency resolution. Extend the capabilities of IoC!
Provide your own dependencies for fields annotated with the @Inject facet. Typically you would augment @Inject with your own facet to provide injection meta. See @ServiceId and @Autobuild for built-in examples.
Contribute DependencyProvider instances to the DependencyProviders service.
@Contribute { serviceType=DependencyProviders# }
static Void contributeDependencyProviders(Configuration conf) {
conf["myProvider"] = conf.autobuild(MyProvider#)
}
Due to DependencyProviders being instantiated before the Registry is fully loaded, DependencyProviders should not be proxied.
@since 1.1
- canProvide
abstract Bool canProvide(InjectionCtx injectionCtx)Return
trueif the provider can provide. (!)- provide
abstract Obj? provide(InjectionCtx injectionCtx)Return the dependency to be injected. All details of the injection to be performed is in
InjectionCtx.