Package io.activej.inject.binding
Class Binding<T>
java.lang.Object
io.activej.inject.binding.Binding<T>
- Direct Known Subclasses:
Bindings.BindingToConstructor0,Bindings.BindingToConstructor1,Bindings.BindingToConstructor2,Bindings.BindingToConstructor3,Bindings.BindingToConstructor4,Bindings.BindingToConstructor5,Bindings.BindingToConstructor6,Bindings.BindingToConstructorN,Bindings.BindingToInstance,BindingToKey
A binding is one of the main components of ActiveJ Inject.
It boils down to "introspectable function", since it only describes function to create an instance of T from an array of objects and
an array of its
dependencies in known terms.
Also it contains a set of binding-DSL-like static factory methods
as well as some functional transformations for the ease of creating immutable binding modifications.
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedprotectedBinding(Set<Key<?>> dependencies, BindingType type, @Nullable LocationInfo location) -
Method Summary
Modifier and TypeMethodDescriptionaddDependencies(Key<?>... extraDependencies) addDependencies(Class<?>... extraDependencies) addDependencies(Set<Key<?>> extraDependencies) as(BindingType type) at(@Nullable LocationInfo location) abstract CompiledBinding<T>compile(CompiledBindingLocator compiledBindings, boolean threadsafe, int scope, @Nullable Integer slot) @Nullable LocationInfogetType()booleanhasDependency(Key<?> dependency) initializeWith(BindingInitializer<T> bindingInitializer) mapDependency(Key<K> dependency, Function<? super K, ? extends K> fn) mapDependency(Class<K> dependency, Function<? super K, ? extends K> fn) <R> Binding<R>mapInstance(Function<? super T, ? extends R> fn) <R> Binding<R>mapInstance(List<Key<?>> dependencies, BiFunction<Object[], ? super T, ? extends R> fn) onDependency(Key<K> dependency, Consumer<? super K> consumer) onDependency(Class<K> dependency, Consumer<? super K> consumer) onInstance(Consumer<? super T> consumer) static <R> Binding<R>to(TupleConstructor0<R> constructor) static <T1,R> Binding<R> to(TupleConstructor1<T1, R> constructor, Key<T1> dependency1) static <T1,R> Binding<R> to(TupleConstructor1<T1, R> constructor, Class<T1> dependency1) static <T1,T2, R> Binding<R> to(TupleConstructor2<T1, T2, R> constructor, Key<T1> dependency1, Key<T2> dependency2) static <T1,T2, R> Binding<R> to(TupleConstructor2<T1, T2, R> constructor, Class<T1> dependency1, Class<T2> dependency2) static <T1,T2, T3, R>
Binding<R>to(TupleConstructor3<T1, T2, T3, R> constructor, Key<T1> dependency1, Key<T2> dependency2, Key<T3> dependency3) static <T1,T2, T3, R>
Binding<R>to(TupleConstructor3<T1, T2, T3, R> constructor, Class<T1> dependency1, Class<T2> dependency2, Class<T3> dependency3) static <T1,T2, T3, T4, R>
Binding<R>to(TupleConstructor4<T1, T2, T3, T4, R> constructor, Key<T1> dependency1, Key<T2> dependency2, Key<T3> dependency3, Key<T4> dependency4) static <T1,T2, T3, T4, R>
Binding<R>to(TupleConstructor4<T1, T2, T3, T4, R> constructor, Class<T1> dependency1, Class<T2> dependency2, Class<T3> dependency3, Class<T4> dependency4) static <T1,T2, T3, T4, T5, R>
Binding<R>to(TupleConstructor5<T1, T2, T3, T4, T5, R> constructor, Key<T1> dependency1, Key<T2> dependency2, Key<T3> dependency3, Key<T4> dependency4, Key<T5> dependency5) static <T1,T2, T3, T4, T5, R>
Binding<R>to(TupleConstructor5<T1, T2, T3, T4, T5, R> constructor, Class<T1> dependency1, Class<T2> dependency2, Class<T3> dependency3, Class<T4> dependency4, Class<T5> dependency5) static <T1,T2, T3, T4, T5, T6, R>
Binding<R>to(TupleConstructor6<T1, T2, T3, T4, T5, T6, R> constructor, Key<T1> dependency1, Key<T2> dependency2, Key<T3> dependency3, Key<T4> dependency4, Key<T5> dependency5, Key<T6> dependency6) static <T1,T2, T3, T4, T5, T6, R>
Binding<R>to(TupleConstructor6<T1, T2, T3, T4, T5, T6, R> constructor, Class<T1> dependency1, Class<T2> dependency2, Class<T3> dependency3, Class<T4> dependency4, Class<T5> dependency5, Class<T6> dependency6) static <R> Binding<R>to(TupleConstructorN<R> constructor, Key<?>[] dependencies) static <R> Binding<R>to(TupleConstructorN<R> constructor, Class<?>[] types) static <T> Binding<T>static <T> Binding<T>static <T> Binding<T>toInstance(T instance) toString()
-
Constructor Details
-
Binding
-
Binding
protected Binding(Set<Key<?>> dependencies, BindingType type, @Nullable @Nullable LocationInfo location)
-
-
Method Details
-
toInstance
-
to
-
to
-
to
-
to
-
to
-
to
public static <T1,T2, Binding<R> toR> (TupleConstructor2<T1, T2, R> constructor, Class<T1> dependency1, Class<T2> dependency2) -
to
public static <T1,T2, Binding<R> toT3, R> (TupleConstructor3<T1, T2, T3, R> constructor, Class<T1> dependency1, Class<T2> dependency2, Class<T3> dependency3) -
to
-
to
-
to
-
to
-
to
-
to
public static <T1,T2, Binding<R> toR> (TupleConstructor2<T1, T2, R> constructor, Key<T1> dependency1, Key<T2> dependency2) -
to
public static <T1,T2, Binding<R> toT3, R> (TupleConstructor3<T1, T2, T3, R> constructor, Key<T1> dependency1, Key<T2> dependency2, Key<T3> dependency3) -
to
-
to
-
to
-
at
-
as
-
onInstance
-
mapInstance
-
mapInstance
-
onDependency
-
onDependency
-
mapDependency
-
mapDependency
-
addDependencies
-
addDependencies
-
addDependencies
-
initializeWith
-
compile
public abstract CompiledBinding<T> compile(CompiledBindingLocator compiledBindings, boolean threadsafe, int scope, @Nullable @Nullable Integer slot) -
getDependencies
-
hasDependency
-
getType
-
getLocation
-
getDisplayString
-
toString
-