Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class ActiveBroadcastListFragment extends BroadcastsListFragment {
- @Override
- protected ItemClickListener getItemClickListener() {
- return new ItemClickListener<Broadcast>() {
- @Override
- public void onItemClick(int pos, Broadcast item, View v) {
- Intent startIntent = new Intent(getContext(), BroadcastActivity.class);
- startIntent.putExtra("id", item.getId());
- getParentFragment().startActivityForResult(startIntent, 1000);
- }
- };
- }
- @Override
- void loadBroadcasts() {
- log("ActiveBroadcastListFragment load broadcasts");
- Api.getInstance()
- .getActiveBroadcasts()
- .subscribeOn(Schedulers.newThread())
- .observeOn(AndroidSchedulers.mainThread())
- .doOnTerminate(actionOnTerminate)
- .map(mapBroadcasts)
- .subscribe(broadcastLoadingSubscriber);
- }
- private Subscriber<ArrayList<Broadcast>> broadcastLoadingSubscriber = new Subscriber<ArrayList<Broadcast>>() {
- @Override
- public void onCompleted() {
- log("Rx onComplete");
- }
- @Override
- public void onError(Throwable e) {
- log("Rx onError");
- }
- @Override
- public void onNext(ArrayList<Broadcast> loadedBroadcasts) {
- log("Rx onNext");
- log("ActiveBroadcastListFragment onSuccess");
- if (loadedBroadcasts != null) {
- broadcasts = loadedBroadcasts;
- deleteLastMarkedItemFromListOfActive();
- showBroadcasts();
- }
- }
- };
- private Func1<BroadcastsListCallData, ArrayList<Broadcast>> mapBroadcasts = new Func1<BroadcastsListCallData, ArrayList<Broadcast>>() {
- @Override
- public ArrayList<Broadcast> call(BroadcastsListCallData broadcastsListCallData) {
- return broadcastsListCallData.getBroadcasts();
- }
- };
- private void deleteLastMarkedItemFromListOfActive() {
- for (Broadcast broadcast : broadcasts) {
- if (broadcast.getId().equals(lastMarkedItemId)) {
- broadcasts.remove(broadcast);
- lastMarkedItemId = "";
- break;
- }
- }
- }
- @Override
- public void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- log("Broadcast On Activity result: " + requestCode);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement