У меня есть класс Property<T>
, который я хотел бы связать после запуска моего приложения. Property<T>
представляет свойство типа T
, значение которого можно изменить во время выполнения.
У меня есть классы, которые можно вводить как таковые:
public class MyClass {
public MyClass(@Named("someName") Property<String> property) {
...
}
}
Я могу связать эти экземпляры, но только после запуска моего приложения, и для этого мне нужно знать все значения аннотации Named
.
Я начал искать Elements
и посещать все экземпляры Element
, чтобы найти все его Binding
. Получив Bindings
, я могу использовать InjectionPoint.forConstructor()
для получения конструктора.
Меня беспокоит то, что различные типы креплений имеют свои отличия. Мне нужно обработать посещение LinkedKeyBinding
, UntargettedBinding
и т. д. Есть ли более простой способ получить все InjectionPoint
для заданного списка модулей? Или, может быть, я иду на это неправильно?
Спасибо!
getDependencies()
для каждогоElement
, который вы можете, а затем регистрировать новые привязки для каждой зависимости@Annotated Property<T>
, которую вы видите. - person Tavian Barnes   schedule 22.11.2016