rx.Observable.concat()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(14.3k)|赞(0)|评价(0)|浏览(203)

本文整理了Java中rx.Observable.concat()方法的一些代码示例,展示了Observable.concat()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Observable.concat()方法的具体详情如下:
包路径:rx.Observable
类名称:Observable
方法名:concat

Observable.concat介绍

[英]Returns an Observable that emits the items emitted by each of the Observables emitted by the source Observable, one after the other, without interleaving them.

Scheduler: concat does not operate by default on a particular Scheduler.
[中]返回一个Observable,该Observable发出源Observable发出的每个Observable发出的项,一个接一个地发出,而不交错它们。
调度器:默认情况下,concat不会在特定的调度器上运行。

代码示例

代码示例来源:origin: jaydenxiao2016/AndroidFire

  1. } else {
  2. return Observable.concat(fromCache, fromNetwork).first();

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getBookListTags() {
  3. String key = StringUtils.creatAcacheKey("book-list-tags");
  4. Observable<BookListTags> fromNetWork = bookApi.getBookListTags()
  5. .compose(RxUtil.<BookListTags>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, BookListTags.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<BookListTags>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("getBookListTags:" + e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(BookListTags tags) {
  21. mView.showBookListTags(tags);
  22. }
  23. });
  24. addSubscrebe(rxSubscription);
  25. }

代码示例来源:origin: smuyyh/BookReader

  1. .concat(RxUtil.rxCreateDiskObservable(key, BookMixAToc.mixToc.class), fromNetWork)
  2. .observeOn(AndroidSchedulers.mainThread())
  3. .subscribe(new Observer<BookMixAToc.mixToc>() {

代码示例来源:origin: smuyyh/BookReader

  1. public void getHotWordList() {
  2. String key = StringUtils.creatAcacheKey("hot-word-list");
  3. Observable<HotWord> fromNetWork = bookApi.getHotWord()
  4. .compose(RxUtil.<HotWord>rxCacheListHelper(key));
  5. //依次检查disk、network
  6. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, HotWord.class), fromNetWork)
  7. .observeOn(AndroidSchedulers.mainThread())
  8. .subscribe(new Observer<HotWord>() {
  9. @Override
  10. public void onNext(HotWord hotWord) {
  11. List<String> list = hotWord.hotWords;
  12. if (list != null && !list.isEmpty() && mView != null) {
  13. mView.showHotWordList(list);
  14. }
  15. }
  16. @Override
  17. public void onCompleted() {
  18. }
  19. @Override
  20. public void onError(Throwable e) {
  21. LogUtils.e("onError: " + e);
  22. }
  23. });
  24. addSubscrebe(rxSubscription);
  25. }

代码示例来源:origin: smuyyh/BookReader

  1. public void getBookDetailReviewList(String bookId, String sort, final int start, int limit) {
  2. String key = StringUtils.creatAcacheKey("book-detail-review-list", bookId, sort, start, limit);
  3. Observable<HotReview> fromNetWork = bookApi.getBookDetailReviewList(bookId, sort, start + "", limit + "")
  4. .compose(RxUtil.<HotReview>rxCacheListHelper(key));
  5. //依次检查disk、network
  6. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, HotReview.class), fromNetWork)
  7. .observeOn(AndroidSchedulers.mainThread())
  8. .subscribe(new Observer<HotReview>() {
  9. @Override
  10. public void onCompleted() {
  11. mView.complete();
  12. }
  13. @Override
  14. public void onError(Throwable e) {
  15. LogUtils.e("getBookDetailReviewList:" + e.toString());
  16. mView.showError();
  17. }
  18. @Override
  19. public void onNext(HotReview list) {
  20. boolean isRefresh = start == 0 ? true : false;
  21. mView.showBookDetailReviewList(list.reviews, isRefresh);
  22. }
  23. });
  24. addSubscrebe(rxSubscription);
  25. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getCategoryList(String gender, final String major, String minor, String type, final int start, int limit) {
  3. String key = StringUtils.creatAcacheKey("category-list", gender, type, major, minor, start, limit);
  4. Observable<BooksByCats> fromNetWork = bookApi.getBooksByCats(gender, type, major, minor, start, limit)
  5. .compose(RxUtil.<BooksByCats>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, BooksByCats.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<BooksByCats>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("getCategoryList:" + e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(BooksByCats booksByCats) {
  21. mView.showCategoryList(booksByCats, start == 0 ? true : false);
  22. }
  23. });
  24. addSubscrebe(rxSubscription);
  25. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getCategoryListLv2() {
  3. String key = StringUtils.creatAcacheKey("category-list2");
  4. Observable<CategoryListLv2> fromNetWork = bookApi.getCategoryListLv2()
  5. .compose(RxUtil.<CategoryListLv2>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, CategoryListLv2.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<CategoryListLv2>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("getCategoryListLv2:" + e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(CategoryListLv2 categoryListLv2) {
  21. mView.showCategoryList(categoryListLv2);
  22. }
  23. });
  24. addSubscrebe(rxSubscription);
  25. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getRankList() {
  3. String key = StringUtils.creatAcacheKey("book-ranking-list");
  4. Observable<RankingList> fromNetWork = bookApi.getRanking()
  5. .compose(RxUtil.<RankingList>rxCacheBeanHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, RankingList.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<RankingList>() {
  10. @Override
  11. public void onNext(RankingList data) {
  12. if (data != null && mView != null) {
  13. mView.showRankList(data);
  14. }
  15. }
  16. @Override
  17. public void onCompleted() {
  18. mView.complete();
  19. }
  20. @Override
  21. public void onError(Throwable e) {
  22. LogUtils.e("getRankList:" + e.toString());
  23. mView.complete();
  24. }
  25. });
  26. addSubscrebe(rxSubscription);
  27. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getGirlBookDisscussionList(String sort, String distillate, final int start, int limit) {
  3. String key = StringUtils.creatAcacheKey("girl-book-discussion-list", "girl", "all", sort, "all", start + "", limit + "", distillate);
  4. Observable<DiscussionList> fromNetWork = bookApi.getGirlBookDisscussionList("girl", "all", sort, "all", start + "", limit + "", distillate)
  5. .compose(RxUtil.<DiscussionList>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, DiscussionList.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<DiscussionList>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("onError: " + e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(DiscussionList list) {
  21. boolean isRefresh = start == 0 ? true : false;
  22. mView.showGirlBookDisscussionList(list.posts, isRefresh);
  23. }
  24. });
  25. addSubscrebe(rxSubscription);
  26. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getBookDisscussionList(String block, String sort, String distillate, final int start, int limit) {
  3. String key = StringUtils.creatAcacheKey("book-discussion-list", block, "all", sort, "all", start + "", limit + "", distillate);
  4. Observable<DiscussionList> fromNetWork = bookApi.getBookDisscussionList(block, "all", sort, "all", start + "", limit + "", distillate)
  5. .compose(RxUtil.<DiscussionList>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, DiscussionList.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<DiscussionList>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("getBookDisscussionList:" + e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(DiscussionList list) {
  21. boolean isRefresh = start == 0 ? true : false;
  22. mView.showBookDisscussionList(list.posts, isRefresh);
  23. }
  24. });
  25. addSubscrebe(rxSubscription);
  26. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getBookHelpList(String sort, String distillate, final int start, int limit) {
  3. String key = StringUtils.creatAcacheKey("book-help-list", "all", sort, start + "", limit + "", distillate);
  4. Observable<BookHelpList> fromNetWork = bookApi.getBookHelpList("all", sort, start + "", limit + "", distillate)
  5. .compose(RxUtil.<BookHelpList>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, BookHelpList.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<BookHelpList>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("getBookHelpList:" + e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(BookHelpList list) {
  21. boolean isRefresh = start == 0 ? true : false;
  22. mView.showBookHelpList(list.helps, isRefresh);
  23. }
  24. });
  25. addSubscrebe(rxSubscription);
  26. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getBookDetailDiscussionList(String bookId, String sort, final int start, int limit) {
  3. String key = StringUtils.creatAcacheKey("book-detail-discussion-list", bookId, sort, start, limit);
  4. Observable<DiscussionList> fromNetWork = bookApi.getBookDetailDisscussionList(bookId, sort, "normal,vote", start + "", limit + "")
  5. .compose(RxUtil.<DiscussionList>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, DiscussionList.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<DiscussionList>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("getBookDetailDiscussionList:" + e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(DiscussionList list) {
  21. boolean isRefresh = start == 0 ? true : false;
  22. mView.showBookDetailDiscussionList(list.posts, isRefresh);
  23. }
  24. });
  25. addSubscrebe(rxSubscription);
  26. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getSearchResultList(String author) {
  3. String key = StringUtils.creatAcacheKey("search-by-author", author);
  4. Observable<BooksByTag> fromNetWork = bookApi.searchBooksByAuthor(author)
  5. .compose(RxUtil.<BooksByTag>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, BooksByTag.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<BooksByTag>() {
  10. @Override
  11. public void onNext(BooksByTag booksByTag) {
  12. if (mView != null)
  13. mView.showSearchResultList(booksByTag.books);
  14. }
  15. @Override
  16. public void onCompleted() {
  17. LogUtils.i("complete");
  18. mView.complete();
  19. }
  20. @Override
  21. public void onError(Throwable e) {
  22. LogUtils.e("getSearchResultList:" + e.toString());
  23. if (mView != null)
  24. mView.showError();
  25. }
  26. });
  27. addSubscrebe(rxSubscription);
  28. }

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getBookReviewList(final String sort, final String type, final String distillate, final int start, final int limit) {
  3. String key = StringUtils.creatAcacheKey("book-review-list", sort, type, distillate, start, limit);
  4. Observable<BookReviewList> fromNetWork = bookApi.getBookReviewList("all", sort, type, start + "", limit + "", distillate)
  5. .compose(RxUtil.<BookReviewList>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, BookReviewList.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<BookReviewList>() {
  10. @Override
  11. public void onCompleted() {
  12. mView.complete();
  13. }
  14. @Override
  15. public void onError(Throwable e) {
  16. LogUtils.e("onError: "+e.toString());
  17. mView.showError();
  18. }
  19. @Override
  20. public void onNext(BookReviewList list) {
  21. LogUtils.d("onNext: get data finish");
  22. boolean isRefresh = start == 0 ? true : false;
  23. mView.showBookReviewList(list.reviews, isRefresh);
  24. }
  25. });
  26. addSubscrebe(rxSubscription);
  27. }

代码示例来源:origin: smuyyh/BookReader

  1. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, CategoryList.class), fromNetWork)
  2. .observeOn(AndroidSchedulers.mainThread())
  3. .subscribe(new Observer<CategoryList>() {

代码示例来源:origin: smuyyh/BookReader

  1. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, BookLists.class), fromNetWork)
  2. .observeOn(AndroidSchedulers.mainThread())
  3. .subscribe(new Observer<BookLists>() {

代码示例来源:origin: smuyyh/BookReader

  1. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, BooksByTag.class), fromNetWork)
  2. .observeOn(AndroidSchedulers.mainThread())
  3. .subscribe(new Observer<BooksByTag>() {

代码示例来源:origin: smuyyh/BookReader

  1. @Override
  2. public void getRecommendList() {
  3. String key = StringUtils.creatAcacheKey("recommend-list", SettingManager.getInstance().getUserChooseSex());
  4. Observable<Recommend> fromNetWork = bookApi.getRecommend(SettingManager.getInstance().getUserChooseSex())
  5. .compose(RxUtil.<Recommend>rxCacheListHelper(key));
  6. //依次检查disk、network
  7. Subscription rxSubscription = Observable.concat(RxUtil.rxCreateDiskObservable(key, Recommend.class), fromNetWork)
  8. .observeOn(AndroidSchedulers.mainThread())
  9. .subscribe(new Observer<Recommend>() {
  10. @Override
  11. public void onNext(Recommend recommend) {
  12. if (recommend != null) {
  13. List<Recommend.RecommendBooks> list = recommend.books;
  14. if (list != null && !list.isEmpty() && mView != null) {
  15. mView.showRecommendList(list);
  16. }
  17. }
  18. }
  19. @Override
  20. public void onCompleted() {
  21. mView.complete();
  22. }
  23. @Override
  24. public void onError(Throwable e) {
  25. LogUtils.e("getRecommendList", e.toString());
  26. mView.showError();
  27. }
  28. });
  29. addSubscrebe(rxSubscription);
  30. }

代码示例来源:origin: BaronZ88/MinimalistWeather

  1. return Observable.concat(observableForGetWeatherFromDB, observableForGetWeatherFromNetWork)
  2. .filter(weather -> weather != null && !TextUtils.isEmpty(weather.getCityId()))
  3. .distinct(weather -> weather.getWeatherLive().getTime())

代码示例来源:origin: Netflix/EVCache

  1. final List<EVCacheClient> fbClients = _pool.getEVCacheClientsForReadExcluding(client.getServerGroup());
  2. if (fbClients != null && !fbClients.isEmpty()) {
  3. return Observable.concat(Observable.from(fbClients).map(
  4. fbClient -> getData(fbClients.indexOf(fbClient), fbClients.size(), fbClient, canonicalKey, tc, throwEx, throwExc, false, scheduler) //TODO : for the last one make sure to pass throwExc
  5. .doOnSuccess(fbData -> increment(fbClient.getServerGroupName(), _cacheName, "RETRY_" + ((fbData == null) ? "MISS" : "HIT")))

相关文章

Observable类方法