added in version 1.1.0
belongs to Maven artifact android.arch.persistence.room:rxjava2:1.1.0-beta2

RxRoom

public class RxRoom
extends Object

java.lang.Object
   ↳ android.arch.persistence.room.RxRoom


Helper class to add RxJava2 support to Room.

Summary

Fields

public static final Object NOTHING

Data dispatched by the publisher created by createFlowable(RoomDatabase, String).

Public constructors

RxRoom()

Public methods

static Flowable<Object> createFlowable(RoomDatabase database, String... tableNames)

Creates a Flowable that emits at least once and also re-emits whenever one of the observed tables is updated.

Inherited methods

Fields

NOTHING

added in version 1.1.0
Object NOTHING

Data dispatched by the publisher created by createFlowable(RoomDatabase, String).

Public constructors

RxRoom

added in version 1.1.0
RxRoom ()

Public methods

createFlowable

added in version 1.1.0
Flowable<Object> createFlowable (RoomDatabase database, 
                String... tableNames)

Creates a Flowable that emits at least once and also re-emits whenever one of the observed tables is updated.

You can easily chain a database operation to downstream of this Flowable to ensure that it re-runs when database is modified.

Since database invalidation is batched, multiple changes in the database may results in just 1 emission.

Parameters
database RoomDatabase: The database instance

tableNames String: The list of table names that should be observed

Returns
Flowable<Object> A Flowable which emits NOTHING when one of the observed tables is modified (also once when the invalidation tracker connection is established).