RxUtil.java 文件源码

java
阅读 31 收藏 0 点赞 0 评论 0

项目:ocelli 作者:
/**
 * Given a list of observables that emit a boolean condition AND all conditions whenever
 * any condition changes and emit the resulting condition when the final condition changes.
 * @param sources
 * @return
 */
public static Observable<Boolean> conditionAnder(List<Observable<Boolean>> sources) {
    return Observable.combineLatest(sources, new FuncN<Observable<Boolean>>() {
        @Override
        public Observable<Boolean> call(Object... args) {
            return Observable.from(args).cast(Boolean.class).firstOrDefault(true, new Func1<Boolean, Boolean>() {
                @Override
                public Boolean call(Boolean status) {
                    return !status;
                }
            });
        }
    })
    .flatMap(new Func1<Observable<Boolean>, Observable<Boolean>>() {
        @Override
        public Observable<Boolean> call(Observable<Boolean> t1) {
            return t1;
        }
    })
    .distinctUntilChanged();
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号