I am using Room and RxJava and I would like to use the power of the second to filter data coming from the first.
Let's say room is returning Users.
Flowable<List<User> getUsers()
Then I wanted to filter users by age > 18 for example, so I performed the following :
userDao.getUsers()
.flatMap(listUser -> Flowable.fromIterable(listUser).filter(user -> user.age > 18))
.toList()
.toFlowable()
Unfortunately this is not working. My guess is that toList() is never finishing since onTerminated is never called by room. So my question is : what am I doing wrong ? How can I filter my users and still have a Flowable at the end ?
Thanks