Advertisement
Guest User

Untitled

a guest
Jul 26th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.55 KB | None | 0 0
  1. public class ActiveBroadcastListFragment extends BroadcastsListFragment {
  2.  
  3. @Override
  4. protected ItemClickListener getItemClickListener() {
  5. return new ItemClickListener<Broadcast>() {
  6. @Override
  7. public void onItemClick(int pos, Broadcast item, View v) {
  8. Intent startIntent = new Intent(getContext(), BroadcastActivity.class);
  9. startIntent.putExtra("id", item.getId());
  10. getParentFragment().startActivityForResult(startIntent, 1000);
  11. }
  12. };
  13. }
  14.  
  15. @Override
  16. void loadBroadcasts() {
  17. log("ActiveBroadcastListFragment load broadcasts");
  18. Api.getInstance()
  19. .getActiveBroadcasts()
  20. .subscribeOn(Schedulers.newThread())
  21. .observeOn(AndroidSchedulers.mainThread())
  22. .doOnTerminate(actionOnTerminate)
  23. .map(mapBroadcasts)
  24. .subscribe(broadcastLoadingSubscriber);
  25. }
  26.  
  27. private Subscriber<ArrayList<Broadcast>> broadcastLoadingSubscriber = new Subscriber<ArrayList<Broadcast>>() {
  28. @Override
  29. public void onCompleted() {
  30. log("Rx onComplete");
  31. }
  32.  
  33. @Override
  34. public void onError(Throwable e) {
  35. log("Rx onError");
  36. }
  37.  
  38. @Override
  39. public void onNext(ArrayList<Broadcast> loadedBroadcasts) {
  40. log("Rx onNext");
  41. log("ActiveBroadcastListFragment onSuccess");
  42. if (loadedBroadcasts != null) {
  43. broadcasts = loadedBroadcasts;
  44. deleteLastMarkedItemFromListOfActive();
  45. showBroadcasts();
  46. }
  47. }
  48. };
  49.  
  50. private Func1<BroadcastsListCallData, ArrayList<Broadcast>> mapBroadcasts = new Func1<BroadcastsListCallData, ArrayList<Broadcast>>() {
  51. @Override
  52. public ArrayList<Broadcast> call(BroadcastsListCallData broadcastsListCallData) {
  53. return broadcastsListCallData.getBroadcasts();
  54. }
  55. };
  56.  
  57. private void deleteLastMarkedItemFromListOfActive() {
  58. for (Broadcast broadcast : broadcasts) {
  59. if (broadcast.getId().equals(lastMarkedItemId)) {
  60. broadcasts.remove(broadcast);
  61. lastMarkedItemId = "";
  62. break;
  63. }
  64. }
  65. }
  66.  
  67. @Override
  68. public void onActivityResult(int requestCode, int resultCode, Intent data) {
  69. super.onActivityResult(requestCode, resultCode, data);
  70. log("Broadcast On Activity result: " + requestCode);
  71. }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement