Advertisement
Guest User

Untitled

a guest
Mar 20th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.71 KB | None | 0 0
  1. class Event{
  2. public Date when;
  3. public String eventName;
  4. }
  5.  
  6. repository.getAllEvents()
  7. .toObservable()
  8. .flatMap(new Function<Events, Observable<Event>>() {
  9. @Override
  10. public Observable<Event> apply(@NonNull Events events) throws Exception {
  11. return Observable.fromIterable(events.getEvents());
  12. }
  13. })
  14. .groupBy(new Function<Event, Date>() {
  15. @Override
  16. public Date apply(@NonNull Event event) throws Exception {
  17. return event.getStartsAt();
  18. }
  19. })
  20. .flatMap(new Function<GroupedObservable<Date, Event>, Observable<Object>>() {
  21. @Override
  22. public Observable<Object> apply(@NonNull GroupedObservable<Date, Event> dateEventGroupedObservable) throws Exception {
  23. final Date key = dateEventGroupedObservable.getKey();
  24. return dateEventGroupedObservable.toList().toObservable().flatMap(new Function<List<Event>, ObservableSource<?>>() {
  25. @Override
  26. public ObservableSource<?> apply(@NonNull List<Event> events) throws Exception {
  27. return Observable.just(new Pair<Date, List<Event>>(key, events));
  28. }
  29. });
  30. }
  31. })
  32. .subscribeOn(Schedulers.io())
  33. .observeOn(AndroidSchedulers.mainThread())
  34. .subscribeWith(new Observer<Object>() {
  35. @Override
  36. public void onSubscribe(Disposable d) {
  37.  
  38. }
  39.  
  40. @Override
  41. public void onNext(Object o) {
  42.  
  43. }
  44.  
  45. @Override
  46. public void onError(Throwable e) {
  47.  
  48. }
  49.  
  50. @Override
  51. public void onComplete() {
  52.  
  53. }
  54. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement