Возможно ли в Dagger использовать Multibinding между зависимыми компонентами? - PullRequest
0 голосов
/ 08 мая 2020

Моя цель - создать карту, используя Dagger Multibinding, и заполнить ее различными модулями, которые полностью не связаны.

Это моя конфигурация

     @Component(modules = { ModuleA.class })

     public interface ComponentA extends AndroidInjector<DaggerApplication> {
        Map<Class<?>, Object> objectByClass();
     }

    @Module
    abstract class ModuleA {

    @Binds
        @IntoMap
        @ClassKey(AClass.class)
        abstract Object provideObjectA(A a);
    }

    @Component(modules = {ModuleB.class}, dependencies = {ComponentA.class})
    public interface ComponentB{
    }

    @Module
    abstract class ModuleB {

    @Binds
        @IntoMap
        @ClassKey(BClass.class)
        abstract Object provideObjectA(B b);
    }

Я хочу, чтобы ModuleA и ModuleB заполняли один и тот же экземпляр Map, чтобы передать его по всем зависимостям как ModuleA, так и ModuleB.

...