[英]Filtering operation on a response I get from retrofit 2 with rxJava
If I'm using retrofit with a rxjava converter to get the response, how and where can I filter the results (into say a List<> of users for example whos property boolean paidDues = true
)? 如果我正在使用带有rxjava转换器的改造来获取响应,我该如何以及在哪里过滤结果(比如说用户的List <>,例如whos属性
boolean paidDues = true
)?
Observable<User> observable = userService.me();
observable.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber<User>() {
@Override
public void onCompleted() { // handle completed }
@Override
public void onError(Throwable e) { // handle error }
@Override
public void onNext(User user) { // handle response }
});
Use a Filter: 使用过滤器:
Observable<User> observable = userService.me();
observable.observeOn(AndroidSchedulers.mainThread())
.filter(new Predicate<User >() {
@Override
public boolean test(@NonNull final User user) throws Exception {
return user.hasPaidDues(); // or something like this
}
})
.subscribe(...);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.