Created
August 23, 2017 14:37
-
-
Save aemxn/42de71c5757f92f7e486fce33ec07247 to your computer and use it in GitHub Desktop.
Login presenter
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.myapp.core.mvp.home.login; | |
public class LoginPresenter extends BasePresenter<LoginContract.LoginView> implements LoginContract.ViewAction { | |
private APIManager apiManager; | |
private PreferenceService preference; | |
private INetworkManager networkManager; | |
private Repository<Login> eventRepository; | |
public LoginPresenter(APIManager apiManager, PreferenceService preference, | |
INetworkManager networkManager, Repository<Login> eventRepository) { | |
this.apiManager = apiManager; | |
this.preference = preference; | |
this.networkManager = networkManager; | |
this.eventRepository = eventRepository; | |
} | |
@Override | |
public void onUserLogin(@NonNull Login login) { | |
if (!isViewAttached()) return; | |
getView().showMessageLayout(false); | |
if (networkManager.isConnected()) { | |
getView().showProgress(); | |
apiManager.loginUser(login, new RemoteCallback<LoginResponse>() { | |
@Override | |
public void onSuccess(LoginResponse response) { | |
if (!isViewAttached()) return; | |
getView().hideProgress(); | |
if (response.getSuccess() == HttpsURLConnection.HTTP_OK) { | |
getView().onLoginSuccess(); | |
} else { | |
getView().showError("Status " + response.getSuccess()); | |
} | |
} | |
@Override | |
public void onUnauthorized() { | |
getView().hideProgress(); | |
getView().showUnauthorizedError(); | |
} | |
@Override | |
public void onFailed(Throwable throwable) { | |
getView().hideProgress(); | |
getView().showError(throwable.getMessage()); | |
} | |
}); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment