Вобщем нужно разобраться с DI-фреймворком Guice и в частности с его воплощением в GWT — Gin.
В GWT-модуль в entry point создается Ginjector и производится инъекция зависимостей.
private InjectorService injector = GWT.create(InjectorService.class);
@GinModules({PlaceContollerInject.class, RootViewInject.class})
public interface InjectorService extends Ginjector {
RootView getRootView();
PlaceController getPlaceConroller();
}
public class RootViewInject extends AbstractGinModule {
@Override
protected void configure() {
bind(RootView.class).to(RootViewImpl.class);
}
}
Затем была сделана мобильная версия сайта c другим модулем.
public class RootViewMobileInject extends AbstractGinModule {
@Override
protected void configure() {
bind(RootView.class).to(RootViewMobileImpl.class);
}
}
Вопрос в том, как сделать инъекцию зависимостей в мобильном модуле в приложении, чтобы в зависимости от того, какая имплементация нам нужна, получать нужный RootView.
Помогите, пожалуста.