What I don’t like in this approach is that the stream is finite, and is subscribed to multiple times. I tend to implement the whole stream logic by subscribing to all streams once at the beginning of the app. And after that everything “magically” works by itself.