Skip to content

Observable with multiple subscribers #14

@IliaEremin

Description

@IliaEremin

Есть один observable, на который подписаны несколько подписчиков.
При отписке любого из них observable должен останавливаться.
Смысл в том, чтобы создавать в одном месте observable и в других классах подписываться на его lifecycle, таким образом добиться модульности.
Пример: начинается загрузка и надо отображать диалог, при отмене которого загрузка прекращается.
Также надо по завершению загрузки отображать данные.
Получается 2 подписчика - экран для отображения и диалог.
Можно это сделать все внутри одного
Subscription subs = observable.doOnEach(../* закрыть диалог */.).subscribe( /* отобразить данные */...) и добавить dialog.setOnDismissListener(() -> subs.unsubscribe());
но если действия в подписчиках не самые тривиальные, это превращается в большую кучу.
И хотелось бы просто отдать lifecycle ивенты в диалог, чтобы он сам решал когда и что с собой делать.
@RuslanZakirov @RamilGabdrakhmanov ваши мысли господа.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions