I am very new to Reactive Programming using ReactiveX Libraries, even so, I have already started appreciating its fluent APIs and style of programming that avoids a class of concurrency bugs.
Therefore, I would like to use ReactiveX (specifically RxJava and RxJS) at work, where I am developing an application that essentially receives a "stream" of updates from a server and displays it to the user (after some manipulations). The way I see it, in terms of reactive-streams nomenclature, my application is a "Subscriber" that subscribes to a Publisher to receive values of interest.
I have a few doubts though that are preventing me from using RxJava at work:
The "Publisher" in my case is another service (that does not use RxJava or such) that I do not control or maintain, therefore, I cannot change its code to implement "Publisher" interface. As such, is it even possible (or, at least, not un-idiomatic) for me to use RxJava? If so, would I have to create a wrapper of sorts to implement a Publisher that takes values from this other service and emits it?
Is it possible/common for the Subscriber and Publisher to be implemented different languages, like the Subscriber (written using RxJS) subscribes to a Publisher written using RxJava?