Skip to content

Commit d45a2cf

Browse files
committed
Modify presenters to use a new Subscriber instance.
Solves android10#22
1 parent 77e719a commit d45a2cf

File tree

2 files changed

+31
-25
lines changed

2 files changed

+31
-25
lines changed

presentation/src/main/java/com/fernandocejas/android10/sample/presentation/presenter/UserDetailsPresenter.java

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
import com.fernandocejas.android10.sample.domain.User;
2020
import com.fernandocejas.android10.sample.domain.exception.DefaultErrorBundle;
2121
import com.fernandocejas.android10.sample.domain.exception.ErrorBundle;
22-
import com.fernandocejas.android10.sample.domain.interactor.UseCase;
2322
import com.fernandocejas.android10.sample.domain.interactor.DefaultSubscriber;
23+
import com.fernandocejas.android10.sample.domain.interactor.UseCase;
2424
import com.fernandocejas.android10.sample.presentation.exception.ErrorMessageFactory;
2525
import com.fernandocejas.android10.sample.presentation.internal.di.PerActivity;
2626
import com.fernandocejas.android10.sample.presentation.mapper.UserModelDataMapper;
@@ -34,7 +34,7 @@
3434
* layer.
3535
*/
3636
@PerActivity
37-
public class UserDetailsPresenter extends DefaultSubscriber<User> implements Presenter {
37+
public class UserDetailsPresenter implements Presenter {
3838

3939
/** id used to retrieve user details */
4040
private int userId;
@@ -108,20 +108,23 @@ private void showUserDetailsInView(User user) {
108108
}
109109

110110
private void getUserDetails() {
111-
this.getUserDetailsUseCase.execute(this);
111+
this.getUserDetailsUseCase.execute(new UserDetailsSubscriber());
112112
}
113113

114-
@Override public void onCompleted() {
115-
this.hideViewLoading();
116-
}
114+
private final class UserDetailsSubscriber extends DefaultSubscriber<User> {
117115

118-
@Override public void onError(Throwable e) {
119-
this.hideViewLoading();
120-
this.showErrorMessage(new DefaultErrorBundle((Exception) e));
121-
this.showViewRetry();
122-
}
116+
@Override public void onCompleted() {
117+
UserDetailsPresenter.this.hideViewLoading();
118+
}
119+
120+
@Override public void onError(Throwable e) {
121+
UserDetailsPresenter.this.hideViewLoading();
122+
UserDetailsPresenter.this.showErrorMessage(new DefaultErrorBundle((Exception) e));
123+
UserDetailsPresenter.this.showViewRetry();
124+
}
123125

124-
@Override public void onNext(User user) {
125-
this.showUserDetailsInView(user);
126+
@Override public void onNext(User user) {
127+
UserDetailsPresenter.this.showUserDetailsInView(user);
128+
}
126129
}
127130
}

presentation/src/main/java/com/fernandocejas/android10/sample/presentation/presenter/UserListPresenter.java

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@
1616
package com.fernandocejas.android10.sample.presentation.presenter;
1717

1818
import android.support.annotation.NonNull;
19-
import com.fernandocejas.android10.sample.domain.interactor.DefaultSubscriber;
2019
import com.fernandocejas.android10.sample.domain.User;
2120
import com.fernandocejas.android10.sample.domain.exception.DefaultErrorBundle;
2221
import com.fernandocejas.android10.sample.domain.exception.ErrorBundle;
22+
import com.fernandocejas.android10.sample.domain.interactor.DefaultSubscriber;
2323
import com.fernandocejas.android10.sample.domain.interactor.UseCase;
2424
import com.fernandocejas.android10.sample.presentation.exception.ErrorMessageFactory;
2525
import com.fernandocejas.android10.sample.presentation.internal.di.PerActivity;
@@ -110,20 +110,23 @@ private void showUsersCollectionInView(Collection<User> usersCollection) {
110110
}
111111

112112
private void getUserList() {
113-
this.getUserListUseCase.execute(this);
113+
this.getUserListUseCase.execute(new UserListSubscriber());
114114
}
115115

116-
@Override public void onCompleted() {
117-
this.hideViewLoading();
118-
}
116+
private final class UserListSubscriber extends DefaultSubscriber<List<User>> {
119117

120-
@Override public void onError(Throwable e) {
121-
this.hideViewLoading();
122-
this.showErrorMessage(new DefaultErrorBundle((Exception) e));
123-
this.showViewRetry();
124-
}
118+
@Override public void onCompleted() {
119+
UserListPresenter.this.hideViewLoading();
120+
}
121+
122+
@Override public void onError(Throwable e) {
123+
UserListPresenter.this.hideViewLoading();
124+
UserListPresenter.this.showErrorMessage(new DefaultErrorBundle((Exception) e));
125+
UserListPresenter.this.showViewRetry();
126+
}
125127

126-
@Override public void onNext(List<User> users) {
127-
this.showUsersCollectionInView(users);
128+
@Override public void onNext(List<User> users) {
129+
UserListPresenter.this.showUsersCollectionInView(users);
130+
}
128131
}
129132
}

0 commit comments

Comments
 (0)