Slide 20
Slide 20 text
MVP: Presenter Implementation
public class ShiftsPresenterImpl implements ShiftsPresenter {
public ShiftsPresenterImpl(ShiftsView view, MyRetrofitApi api,
Observable.Transformer schedulerTransformer) {
// Set fields
}
@Override
public void loadShifts(DateTime startTime, DateTime endTime) {
view.toggleProgressVisibility(true);
api.listShifts(startTime, endTime)
.doOnNext(response -> view.toggleProgressVisibility(false))
.doOnError(response -> view.toggleProgressVisibility(false))
.compose(schedulerTransformer)
.compose(view.bindToLifecycle())
.subscribe(shifts -> view.bindShifts(shifts), throwable -> view.showError(throwable));
}
}
#mdevcon