Browse Source

Temp solution added to kftc param

master
preyearegmi 6 years ago
parent
commit
55714a9aaa
  1. 40
      app/src/main/java/com/gmeremit/online/gmeremittance_native/autodebitV2/presenter/autodebitaccountlisting/AutoDebitAccountListingV2Presenter.java

40
app/src/main/java/com/gmeremit/online/gmeremittance_native/autodebitV2/presenter/autodebitaccountlisting/AutoDebitAccountListingV2Presenter.java

@ -1,5 +1,7 @@
package com.gmeremit.online.gmeremittance_native.autodebitV2.presenter.autodebitaccountlisting; package com.gmeremit.online.gmeremittance_native.autodebitV2.presenter.autodebitaccountlisting;
import android.os.Handler;
import com.gmeremit.online.gmeremittance_native.R; import com.gmeremit.online.gmeremittance_native.R;
import com.gmeremit.online.gmeremittance_native.autodebitV2.gateway.autodebitaccountlisting.AutoDebitAccountListingV2Gateway; import com.gmeremit.online.gmeremittance_native.autodebitV2.gateway.autodebitaccountlisting.AutoDebitAccountListingV2Gateway;
import com.gmeremit.online.gmeremittance_native.autodebitV2.model.autodebitaccountlisting.AutoDebitAccount; import com.gmeremit.online.gmeremittance_native.autodebitV2.model.autodebitaccountlisting.AutoDebitAccount;
@ -29,6 +31,7 @@ public class AutoDebitAccountListingV2Presenter extends BasePresenter implements
private List<KeyValueData> requiredHeader; private List<KeyValueData> requiredHeader;
private List<KeyValueData> availableLanguages; private List<KeyValueData> availableLanguages;
private String postUrl; private String postUrl;
private boolean canRetry;
public AutoDebitAccountListingV2Presenter(AutoDebitAccountListingV2PresenterInterface.AutoDebitAccountListingV2ContractInterface view) { public AutoDebitAccountListingV2Presenter(AutoDebitAccountListingV2PresenterInterface.AutoDebitAccountListingV2ContractInterface view) {
@ -37,6 +40,7 @@ public class AutoDebitAccountListingV2Presenter extends BasePresenter implements
requiredHeader = null; requiredHeader = null;
postUrl = null; postUrl = null;
this.compositeDisposable = new CompositeDisposable(); this.compositeDisposable = new CompositeDisposable();
canRetry=true;
} }
@Override @Override
@ -87,8 +91,7 @@ public class AutoDebitAccountListingV2Presenter extends BasePresenter implements
return postUrl + "&lang=" + language; return postUrl + "&lang=" + language;
} }
public class AutoDebitAccountListingObserver extends GenericApiObserverResponseV2<AutoDebitModel>
{
public class AutoDebitAccountListingObserver extends GenericApiObserverResponseV2<AutoDebitModel> {
@Override @Override
protected Type setType() { protected Type setType() {
return TypeToken.getParameterized(GenericResponseDataModel.class, AutoDebitModel.class).getType(); return TypeToken.getParameterized(GenericResponseDataModel.class, AutoDebitModel.class).getType();
@ -96,22 +99,37 @@ public class AutoDebitAccountListingV2Presenter extends BasePresenter implements
@Override @Override
protected void onSuccess(GenericResponseDataModel<AutoDebitModel> t) { protected void onSuccess(GenericResponseDataModel<AutoDebitModel> t) {
if(t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2))
{
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) {
requiredHeader = t.getData().getHeader(); requiredHeader = t.getData().getHeader();
postUrl = t.getData().getURL(); postUrl = t.getData().getURL();
availableLanguages = t.getData().getLanguage(); availableLanguages = t.getData().getLanguage();
if (t.getData().getAccountList() != null && t.getData().getAccountList().size() > 0) if (t.getData().getAccountList() != null && t.getData().getAccountList().size() > 0)
view.showAllAccountsToUser(t.getData().getAccountList()); view.showAllAccountsToUser(t.getData().getAccountList());
}
else
} else {
//TODO temp solution
if (t.getMsg().toLowerCase().contains("object reference not set to an instance of an object.")&&canRetry)
{ {
canRetry=false;
view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text));
new Handler().postDelayed(()->{
compositeDisposable.add(
gateway.getAllAccountsFromNetwork(gateway.getAuth(), gateway.getUserID())
.doFinally(() -> view.showProgressBar(false, ""))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribeWith(new AutoDebitAccountListingObserver())
);
},2000);
}
else {
requiredHeader = null; requiredHeader = null;
postUrl = null; postUrl = null;
availableLanguages = null; availableLanguages = null;
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView()); view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView());
} }
} }
}
@Override @Override
public void onFailed(String message) { public void onFailed(String message) {
@ -133,8 +151,7 @@ public class AutoDebitAccountListingV2Presenter extends BasePresenter implements
} }
} }
public class AutoDebitAccountDeleteObserver extends GenericApiObserverResponseV2<MessageResponseDataModel>
{
public class AutoDebitAccountDeleteObserver extends GenericApiObserverResponseV2<MessageResponseDataModel> {
private final AutoDebitAccount accountToBeDeleted; private final AutoDebitAccount accountToBeDeleted;
AutoDebitAccountDeleteObserver(AutoDebitAccount accountData) { AutoDebitAccountDeleteObserver(AutoDebitAccount accountData) {
@ -148,13 +165,10 @@ public class AutoDebitAccountListingV2Presenter extends BasePresenter implements
@Override @Override
protected void onSuccess(GenericResponseDataModel<MessageResponseDataModel> t) { protected void onSuccess(GenericResponseDataModel<MessageResponseDataModel> t) {
if(t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2))
{
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) {
view.showToastMessage(t.getData().getMsg()); view.showToastMessage(t.getData().getMsg());
view.onAutoDebitAccountDeletedSuccessfully(accountToBeDeleted); view.onAutoDebitAccountDeletedSuccessfully(accountToBeDeleted);
}
else
{
} else {
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, null); view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, null);
} }
} }

Loading…
Cancel
Save