Для чего используется EventBus, переданный в AbstractActivity.start в GWT?

Перед использованием каркаса действий у меня обычно был один экземпляр Global/Singleton GWT EventBus. Теперь я заметил, что класс активности передает экземпляр в мои действия. Предназначен ли этот eventbus для универсальной передачи сообщений на стороне клиента или что-то еще?

1 ответ

Решение

Это ссылка на то же самое EventBus что вы создали ActivityManager с и предназначен для использования в качестве глобальной шины событий для всего приложения. Используйте это для вещей, которые выходят за рамки Activity,

Перед передачей в ваше действие он оборачивается так, что любые обработчики, которые вы добавляете в него, будут вызываться только тогда, когда действие все еще активно (что упрощает очистку).

От start() JavaDoc:

Любые обработчики, подключенные к предоставленной шине событий, будут отменены при остановке действия, поэтому действиям редко придется держаться за экземпляры HandlerRegistration, возвращаемые EventBus.addHandler (com.google.web.bindery.event.shared.Event Тип, H).

Другие вопросы по тегам