The place where random ideas get written down and lost in time.

2017-04-21 - RxJava / RxAndroid

Category DEV

Looking into RxJava 2 for usage in CabThrottle and derived apps.

RxJava 2 has 2 kinds of streams: "observables" (no back pressure, no blocking) and "flowable" (back pressure, blocking). Still trying to figure the APIs correctly, but let's see where these would be needed:

  • Mountain throttle: stream from the hardware throttle to notify of throttle changes.
  • CabThrottle:
    • NSD/Discovery stream (add/remove).
    • Throttle UI to controller.
    • Throttle controller to network.
    • Network back to throttle controller/UI.
  • KeyServer changes.

Some of these were done using the event bus and instead would map nicely in the concept of a stream with subscribers being notified. They are not pull events, mostly push events.

All of these map on the observable (no back pressure / no blocking) pattern.


 Generated on 2024-11-22 by Rig4j 0.1-Exp-f2c0035