RxJava2 EventBus that supports pausing and resuming. This way, you can achieve that the bus is queueing events while it is paused and emitting events while it is resumed which is a nice way to enforce that events are only observed, when for example your activity is resumed and your views are accessible.
The Universal Event Bus is an event dispatcher architecture which help you to use most common event bus implementation as Otto in a structured mode.
An events is a bus designed to separate different parts of the application, while still allowing them to communicate efficiently. The operation of the EventDispatcher is based on the publish-subscribe pattern: the bus asked a series of events that will be collected by those who joined them.
The publisher is, in this case, called Bus or RxBus and deals with post events using the Observable of RxJava. The event dispatcher contains two RxBuses: one dedicated to the UI thread, and the other for all the other events that have nothing to do with the UI (network calls, CRUD operations with the database etc.).
The data binding model and tools that google introduced leaves out something, namely how to updated when user changes text, etc. Seems to me that it might call for using some of the RXJava and RxAndroid Observables sugar to handle those cases and make the event bus more streamlined and handle more use cases.
MicroBus is inspired by OttoBus, and it has its stronger and weaker points.