Browse Source

Login fixes

master
Preyea Regmi 5 years ago
parent
commit
602c7fc4c0
  1. 8
      app/src/main/java/com/gmeremit/online/gmeremittance_native/changepasswordV2/presenter/ChangePasswordV2Presenter.java
  2. 20
      app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/presenter/LoginV2Presenter.java
  3. 4
      app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/presenter/LoginV2PresenterInterface.java
  4. 10
      app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/view/LoginV2Activity.java
  5. 5
      app/src/main/java/com/gmeremit/online/gmeremittance_native/transactionpasspromt/presenter/TransactionPasswordPromptV2Presenter.java
  6. 6
      app/src/main/java/com/gmeremit/online/gmeremittance_native/transactionpasspromt/view/TransactionBiometricPromptDialog.java

8
app/src/main/java/com/gmeremit/online/gmeremittance_native/changepasswordV2/presenter/ChangePasswordV2Presenter.java

@ -1,20 +1,14 @@
package com.gmeremit.online.gmeremittance_native.changepasswordV2.presenter; package com.gmeremit.online.gmeremittance_native.changepasswordV2.presenter;
import android.os.Build;
import android.security.keystore.KeyPermanentlyInvalidatedException;
import android.util.Log;
import com.gmeremit.online.gmeremittance_native.R; import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.base.BasePresenter; import com.gmeremit.online.gmeremittance_native.base.BasePresenter;
import com.gmeremit.online.gmeremittance_native.changepasswordV2.gateway.ChangePasswordV2Gateway; import com.gmeremit.online.gmeremittance_native.changepasswordV2.gateway.ChangePasswordV2Gateway;
import com.gmeremit.online.gmeremittance_native.changepasswordV2.model.ChangePasswordActivityV2APIResponse; import com.gmeremit.online.gmeremittance_native.changepasswordV2.model.ChangePasswordActivityV2APIResponse;
import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog; import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog;
import com.gmeremit.online.gmeremittance_native.loginV2.presenter.LoginV2Presenter;
import com.gmeremit.online.gmeremittance_native.utils.Constants; import com.gmeremit.online.gmeremittance_native.utils.Constants;
import com.gmeremit.online.gmeremittance_native.utils.Utils; import com.gmeremit.online.gmeremittance_native.utils.Utils;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponse; import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponse;
import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils; import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils;
import com.mtramin.rxfingerprint.data.FingerprintEncryptionResult;
import io.reactivex.Observable; import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.android.schedulers.AndroidSchedulers;
@ -172,7 +166,7 @@ public class ChangePasswordV2Presenter extends BasePresenter implements ChangePa
} }
private Observable<String> encryptToKeyStore(String data) { private Observable<String> encryptToKeyStore(String data) {
return SecurityUtils.encryptToKeyStore(view.getContext(), data)
return SecurityUtils.encryptByKeyStore(view.getContext(), data)
.flatMap(encKey ->Observable.just(encKey.getEncrypted())); .flatMap(encKey ->Observable.just(encKey.getEncrypted()));
} }

20
app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/presenter/LoginV2Presenter.java

@ -64,7 +64,7 @@ public class LoginV2Presenter extends BasePresenter implements LoginV2PresenterI
} }
private Observable<String> encryptByKeyStore(String data) { private Observable<String> encryptByKeyStore(String data) {
return SecurityUtils.encryptToKeyStore(view.getContext(), data)
return SecurityUtils.encryptByKeyStore(view.getContext(), data)
.flatMap(encKey -> Observable.just(encKey.getEncrypted())); .flatMap(encKey -> Observable.just(encKey.getEncrypted()));
} }
@ -79,7 +79,7 @@ public class LoginV2Presenter extends BasePresenter implements LoginV2PresenterI
private Observable<String> decryptByKeyStore(String data) { private Observable<String> decryptByKeyStore(String data) {
return SecurityUtils.decryptFromKeyStore(view.getContext(), data)
return SecurityUtils.decryptByKeyStore(view.getContext(), data)
.flatMap(authentication -> { .flatMap(authentication -> {
switch (authentication.getResult()) { switch (authentication.getResult()) {
case FAILED: case FAILED:
@ -193,9 +193,7 @@ public class LoginV2Presenter extends BasePresenter implements LoginV2PresenterI
if (SecurityUtils.checkFingerPrintUsablity(view.getContext())) if (SecurityUtils.checkFingerPrintUsablity(view.getContext()))
persistUserCredentialForFingerprintAuth(userId, encUserPassword,loginResponse); persistUserCredentialForFingerprintAuth(userId, encUserPassword,loginResponse);
else { else {
view.showInvalidPassword(null);
view.showInvalidUserId(null);
encUserPassword = null;
onLoginSuccess(loginResponse); onLoginSuccess(loginResponse);
} }
} }
@ -219,8 +217,17 @@ public class LoginV2Presenter extends BasePresenter implements LoginV2PresenterI
} }
} }
private void clearExistingFormData()
{
view.showInvalidPassword(null);
view.showInvalidUserId(null);
view.clearUserName();
view.clearPassword();
encUserPassword = null;
}
private void onLoginSuccess(LoginModelV2 loginResponse) { private void onLoginSuccess(LoginModelV2 loginResponse) {
clearExistingFormData();
Runnable task=null; Runnable task=null;
boolean hasSubmittedKYC=loginResponse.getKyc(); boolean hasSubmittedKYC=loginResponse.getKyc();
boolean hasCompletedPennyTest=loginResponse.getPennyTestStatus().equalsIgnoreCase("2"); boolean hasCompletedPennyTest=loginResponse.getPennyTestStatus().equalsIgnoreCase("2");
@ -316,9 +323,6 @@ public class LoginV2Presenter extends BasePresenter implements LoginV2PresenterI
gateway.persistSecretKey(fingerprintEncResult.getEncKey()); gateway.persistSecretKey(fingerprintEncResult.getEncKey());
gateway.persistUserPwd(fingerprintEncResult.getEncPwd()); gateway.persistUserPwd(fingerprintEncResult.getEncPwd());
gateway.persistUserId(fingerprintEncResult.getUserId()); gateway.persistUserId(fingerprintEncResult.getUserId());
view.showInvalidPassword(null);
view.showInvalidUserId(null);
encUserPassword = null;
onLoginSuccess(loginModelV2); onLoginSuccess(loginModelV2);
} }

4
app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/presenter/LoginV2PresenterInterface.java

@ -44,5 +44,9 @@ public interface LoginV2PresenterInterface extends BasePresenterInterface {
void redirectToPennyTestView(int requestCode); void redirectToPennyTestView(int requestCode);
void redirectToKYCScreen(String email,int requestCode); void redirectToKYCScreen(String email,int requestCode);
void clearUserName();
void clearPassword();
} }
} }

10
app/src/main/java/com/gmeremit/online/gmeremittance_native/loginV2/view/LoginV2Activity.java

@ -295,6 +295,16 @@ public class LoginV2Activity extends BaseActivity implements View.OnClickListene
startActivityForResult(startKycIntent, requestCode); startActivityForResult(startKycIntent, requestCode);
} }
@Override
public void clearUserName() {
usernameId.setText("");
}
@Override
public void clearPassword() {
securityKeyboardManager.clearText();
}
@Override @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) { public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);

5
app/src/main/java/com/gmeremit/online/gmeremittance_native/transactionpasspromt/presenter/TransactionPasswordPromptV2Presenter.java

@ -7,18 +7,15 @@ import android.util.Log;
import com.gmeremit.online.gmeremittance_native.R; import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.base.BasePresenter; import com.gmeremit.online.gmeremittance_native.base.BasePresenter;
import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog; import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog;
import com.gmeremit.online.gmeremittance_native.loginV2.presenter.LoginV2Presenter;
import com.gmeremit.online.gmeremittance_native.transactionpasspromt.gateway.TransactionPasswordPromptV2Gateway; import com.gmeremit.online.gmeremittance_native.transactionpasspromt.gateway.TransactionPasswordPromptV2Gateway;
import com.gmeremit.online.gmeremittance_native.utils.Constants; import com.gmeremit.online.gmeremittance_native.utils.Constants;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponseV2; import com.gmeremit.online.gmeremittance_native.utils.https.GenericApiObserverResponseV2;
import com.gmeremit.online.gmeremittance_native.utils.https.GenericResponseDataModel; import com.gmeremit.online.gmeremittance_native.utils.https.GenericResponseDataModel;
import com.gmeremit.online.gmeremittance_native.utils.https.MessageResponseDataModel; import com.gmeremit.online.gmeremittance_native.utils.https.MessageResponseDataModel;
import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils; import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils;
import com.google.gson.reflect.TypeToken;
import com.mtramin.rxfingerprint.data.FingerprintAuthenticationException; import com.mtramin.rxfingerprint.data.FingerprintAuthenticationException;
import com.mtramin.rxfingerprint.data.FingerprintDecryptionResult; import com.mtramin.rxfingerprint.data.FingerprintDecryptionResult;
import java.lang.reflect.Type;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import io.reactivex.Observable; import io.reactivex.Observable;
@ -133,7 +130,7 @@ public class TransactionPasswordPromptV2Presenter extends BasePresenter implemen
} }
private Observable<String> decryptFromKeyStore(String data) { private Observable<String> decryptFromKeyStore(String data) {
return SecurityUtils.decryptFromKeyStore(view.getContext(), data)
return SecurityUtils.decryptByKeyStore(view.getContext(), data)
.flatMap(authentication -> { .flatMap(authentication -> {
switch (authentication.getResult()) { switch (authentication.getResult()) {
case FAILED: case FAILED:

6
app/src/main/java/com/gmeremit/online/gmeremittance_native/transactionpasspromt/view/TransactionBiometricPromptDialog.java

@ -11,8 +11,6 @@ import android.support.v7.app.AlertDialog;
import android.util.Log; import android.util.Log;
import android.view.Gravity; import android.view.Gravity;
import android.view.View; import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
@ -20,8 +18,6 @@ import android.widget.Toast;
import com.gmeremit.online.gmeremittance_native.GmeApplication; import com.gmeremit.online.gmeremittance_native.GmeApplication;
import com.gmeremit.online.gmeremittance_native.R; import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.base.PrefKeys; import com.gmeremit.online.gmeremittance_native.base.PrefKeys;
import com.gmeremit.online.gmeremittance_native.customwidgets.CustomAlertDialog;
import com.gmeremit.online.gmeremittance_native.transactionpasspromt.presenter.TransactionPasswordPromptV2Presenter;
import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils; import com.gmeremit.online.gmeremittance_native.utils.security.SecurityUtils;
import com.mtramin.rxfingerprint.data.FingerprintAuthenticationException; import com.mtramin.rxfingerprint.data.FingerprintAuthenticationException;
import com.mtramin.rxfingerprint.data.FingerprintDecryptionResult; import com.mtramin.rxfingerprint.data.FingerprintDecryptionResult;
@ -133,7 +129,7 @@ public class TransactionBiometricPromptDialog extends android.support.v4.app.Dia
} }
private Observable<String> decryptFromKeyStore(String data) { private Observable<String> decryptFromKeyStore(String data) {
return SecurityUtils.decryptFromKeyStore(getActivity(), data)
return SecurityUtils.decryptByKeyStore(getActivity(), data)
.flatMap(authentication -> { .flatMap(authentication -> {
switch (authentication.getResult()) { switch (authentication.getResult()) {
case FAILED: case FAILED:

Loading…
Cancel
Save