Использование GIN и mvp4g - PullRequest
3 голосов
/ 05 мая 2010

Я хотел бы использовать реализацию gwt-dispatch Command Patter в моем приложении. Я использую также mvp4g. Как я могу сделать DefaultDispatchAsync доступным для внедрения в моих докладчиков с помощью GIN или сделать его доступным глобально, чтобы я мог получить к нему доступ из моих докладчиков?

1 Ответ

2 голосов
/ 05 мая 2010

Вам необходимо установить привязку для класса DefaultDispatchAsync в вашем модуле джина. Это установит привязку для интерфейса DispatchAsync, который реализует класс DefaultDispatchAsync. Затем вы можете добавить DispatchAsync в конструктор презентатора и сделать так, чтобы gin вводил его при необходимости.

Обычно мои презентаторы содержат закрытый член DispatchAsync, которому я назначаю введенный аргумент DispatchAsync внутри конструктора. Затем отправка может использоваться в классе докладчика по мере необходимости.

Итак, в методе настройки вашего GinModule добавьте строку

bind(DefaultDispatchAsync.class);

Тогда на вашем конструкторе презентатора,

@Inject
public TestPresenter(/*Other injected arguments*/, final DispatchAsync dispatcher) {
   this.dispatcher = dispatcher;
}
...