Skip to content
This repository was archived by the owner on Oct 27, 2024. It is now read-only.

Commit df26f4a

Browse files
author
Ashwini Kumar
authored
Integrated lambda with rxjava2 (#6)
1 parent 5939dc4 commit df26f4a

File tree

2 files changed

+51
-85
lines changed

2 files changed

+51
-85
lines changed

app/src/main/java/com/esoxjem/movieguide/details/MovieDetailsPresenter.java

Lines changed: 29 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
import io.reactivex.android.schedulers.AndroidSchedulers;
77
import io.reactivex.disposables.CompositeDisposable;
8-
import io.reactivex.observers.DisposableObserver;
98
import io.reactivex.schedulers.Schedulers;
109

1110
/**
@@ -58,64 +57,47 @@ public void showTrailers(Movie movie)
5857
compositeDisposable.add(movieDetailsEndpoint.getMovieTrailers(movie.getId())
5958
.subscribeOn(Schedulers.io())
6059
.observeOn(AndroidSchedulers.mainThread())
61-
.subscribeWith(new DisposableObserver<VideoViewModel>()
62-
{
63-
@Override
64-
public void onNext(VideoViewModel videoViewModel)
65-
{
66-
if (isViewAttached())
67-
{
68-
view.showTrailers(videoViewModel.getVideos());
69-
}
70-
}
71-
72-
@Override
73-
public void onError(Throwable e)
74-
{
75-
76-
}
77-
78-
@Override
79-
public void onComplete()
80-
{
81-
82-
}
83-
}));
60+
.subscribe(this::onTrailersResult, throwable -> onError()));
8461
}
8562

63+
private void onError()
64+
{
65+
// do nothing
66+
}
67+
68+
private void onTrailersResult(VideoViewModel videoViewModel)
69+
{
70+
if (isViewAttached())
71+
{
72+
view.showTrailers(videoViewModel.getVideos());
73+
} else
74+
{
75+
// do nothing
76+
}
77+
}
8678

8779
@Override
8880
public void showReviews(Movie movie)
8981
{
9082
compositeDisposable.add(movieDetailsEndpoint.getMovieReviews(movie.getId())
9183
.subscribeOn(Schedulers.io())
9284
.observeOn(AndroidSchedulers.mainThread())
93-
.subscribeWith(new DisposableObserver<ReviewViewModel>()
94-
{
95-
@Override
96-
public void onNext(ReviewViewModel reviewViewModel)
97-
{
98-
if (isViewAttached())
99-
{
100-
view.showReviews(reviewViewModel.getReviews());
101-
}
102-
}
103-
104-
@Override
105-
public void onError(Throwable e)
106-
{
107-
108-
}
109-
110-
@Override
111-
public void onComplete()
112-
{
113-
114-
}
115-
}));
85+
.subscribe(this::onReviewsResult, throwable -> onError()));
11686

11787
}
11888

89+
private void onReviewsResult(ReviewViewModel reviewViewModel)
90+
{
91+
92+
if (isViewAttached())
93+
{
94+
view.showReviews(reviewViewModel.getReviews());
95+
} else
96+
{
97+
// do nothing
98+
}
99+
}
100+
119101
@Override
120102
public void showFavoriteButton(Movie movie)
121103
{

app/src/main/java/com/esoxjem/movieguide/listing/MoviesListingPresenter.java

Lines changed: 22 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66

77
import io.reactivex.android.schedulers.AndroidSchedulers;
88
import io.reactivex.disposables.CompositeDisposable;
9-
import io.reactivex.observers.DisposableObserver;
109
import io.reactivex.schedulers.Schedulers;
1110

1211
/**
@@ -68,26 +67,30 @@ private void loadPopularMovies()
6867
view.loadingStarted();
6968
}
7069
})
71-
.subscribeWith(new DisposableObserver<MovieViewModel>()
72-
{
73-
@Override
74-
public void onComplete()
75-
{
70+
.subscribe(this::onMoviewsResult, this::onError));
71+
}
7672

77-
}
73+
private void onMoviewsResult(MovieViewModel movieViewModel)
74+
{
75+
if (isViewAttached())
76+
{
77+
view.showMovies(movieViewModel.getMovies());
78+
} else
79+
{
80+
// do nothing
81+
}
82+
}
7883

79-
@Override
80-
public void onError(Throwable e)
81-
{
82-
view.loadingFailed(e.getMessage());
83-
}
8484

85-
@Override
86-
public void onNext(MovieViewModel movieViewModel)
87-
{
88-
view.showMovies(movieViewModel.getMovies());
89-
}
90-
}));
85+
private void onError(Throwable throwable)
86+
{
87+
if (isViewAttached())
88+
{
89+
view.loadingFailed(throwable.getMessage());
90+
} else
91+
{
92+
// do nothing
93+
}
9194
}
9295

9396
private void loadHighestRatedMovies()
@@ -101,26 +104,7 @@ private void loadHighestRatedMovies()
101104
view.loadingStarted();
102105
}
103106
})
104-
.subscribeWith(new DisposableObserver<MovieViewModel>()
105-
{
106-
@Override
107-
public void onComplete()
108-
{
109-
110-
}
111-
112-
@Override
113-
public void onError(Throwable e)
114-
{
115-
view.loadingFailed(e.getMessage());
116-
}
117-
118-
@Override
119-
public void onNext(MovieViewModel movieViewModel)
120-
{
121-
view.showMovies(movieViewModel.getMovies());
122-
}
123-
}));
107+
.subscribe(this::onMoviewsResult, this::onError));
124108
}
125109

126110
private void loadFavouriteMovies()

0 commit comments

Comments
 (0)