Annotation Interface Inject


@Target({FIELD,CONSTRUCTOR,METHOD,TYPE}) @Retention(RUNTIME) public @interface Inject
This annotation is part of the injection DSL, it allows you to generate bindings using object constructors or static factory methods. By default there is an implicit binding present, that can generate missing bindings for injectable classes.

This annotation can be put on the class itself - its default constructor is used for binding generation and must exist, on class constructor that will be used, or on factory method (static method with return type of that class).

When a binding is generated, class methods and fields are scanned for the Inject annotations and added as the binding dependencies - on instance creation fields will be injected and methods will be called with their parameters injected and return ignored. Name annotations on fields and method parameters will be considered.

See Also: