The class to bind.
An optional qualifier.
The class to bind.
Qualify this binding key with the given name.
Qualify this binding key with the given name.
For example, you may have both a cached implementation, and a direct implementation of a service. To differentiate between them, you may decide to name the cached one:
bind[Foo].qualifiedWith("cached").to[FooCached], bind[Foo].to[FooImpl] ... class MyController @Inject() (@Named("cached") foo: Foo) { ... }
In the above example, the controller will get the cached Foo
service.
Qualify this binding key with the given annotation.
Qualify this binding key with the given annotation.
For example, you may have both a cached implementation, and a direct implementation of a service. To differentiate between them, you may define a Cached annotation:
import scala.annotation._ @target.param class Cached extends StaticAnnotation ... bind[Foo].qualifiedWith[Cached].to[FooCached], bind[Foo].to[FooImpl] ... class MyController @Inject() (@Cached foo: Foo) { ... }
In the above example, the controller will get the cached Foo
service.
Qualify this binding key with the given annotation.
Qualify this binding key with the given annotation.
For example, you may have both a cached implementation, and a direct implementation of a service. To differentiate between them, you may define a Cached annotation:
import scala.annotation._ @target.param class Cached extends StaticAnnotation ... bind[Foo].qualifiedWith(classOf[Cached]).to[FooCached], bind[Foo].to[FooImpl] ... class MyController @Inject() (@Cached foo: Foo) { ... }
In the above example, the controller will get the cached Foo
service.
Qualify this binding key with the given instance of an annotation.
Qualify this binding key with the given instance of an annotation.
This can be used to specify bindings with annotations that have particular values.
An optional qualifier.
Bind this binding key to another binding key.
Bind this binding key to the given instance.
Bind this binding key to the given provider instance.
Bind this binding key to the given provider instance.
This provider instance will be invoked to obtain the implementation for the key.
Bind this binding key to the given implementation class.
Bind this binding key to the given implementation class.
This class will be instantiated and injected by the injection framework.
Bind this binding key to the given implementation class.
Bind this binding key to the given implementation class.
This class will be instantiated and injected by the injection framework.
Bind this binding key to the given instance.
Bind this binding key to the given provider class.
Bind this binding key to the given provider class.
The dependency injection framework will instantiate and inject this provider, and then invoke its get
method
whenever an instance of the class is needed.
Bind this binding key to the given provider class.
Bind this binding key to the given provider class.
The dependency injection framework will instantiate and inject this provider, and then invoke its get
method
whenever an instance of the class is needed.
Bind this binding key to itself.
A binding key.
A binding key consists of a class and zero or more JSR-330 qualifiers.
The class to bind.
An optional qualifier.
The Module class for information on how to provide bindings.