Updated on 2026-08-14
This commit is contained in:
parent
6d3ab223ec
commit
c577dae7a1
9 changed files with 451 additions and 525 deletions
|
|
@ -45,11 +45,11 @@ public class ConnectFeeTask extends FeeTask {
|
|||
|
||||
|
||||
if (errCounter >= sharedCounter.allRequest) {
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.finishActivityWithError(Activity.RESULT_CANCELED, "Cannot calculate fee! No connection with blockchain nodes");
|
||||
}
|
||||
} else {
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.finishActivityWithError(Activity.RESULT_CANCELED, "Cannot calculate fee! No connection with blockchain nodes");
|
||||
}
|
||||
|
||||
|
|
@ -58,7 +58,7 @@ public class ConnectFeeTask extends FeeTask {
|
|||
}
|
||||
|
||||
if (minFeeRate == 0) {
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.finishActivityWithError(Activity.RESULT_CANCELED, "Cannot calculate fee! Wrong data received from the node");
|
||||
return;
|
||||
}
|
||||
|
|
@ -75,50 +75,50 @@ public class ConnectFeeTask extends FeeTask {
|
|||
if (sharedCounter != null) {
|
||||
int errCounter = sharedCounter.errorRequest.incrementAndGet();
|
||||
if (errCounter >= sharedCounter.allRequest) {
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.finishActivityWithError(Activity.RESULT_CANCELED, "Cannot calculate fee! No connection with blockchain nodes");
|
||||
}
|
||||
} else {
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.finishActivityWithError(Activity.RESULT_CANCELED, "Cannot calculate fee! No connection with blockchain nodes");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
|
||||
float finalFee = (float) minFeeRate / (float) 10000;
|
||||
|
||||
finalFee = Math.round(finalFee) / (float) 10000;
|
||||
|
||||
if ((request.getBlockCount() == FeeRequest.MINIMAL) && (confirmPaymentActivity.minFee == null)) {
|
||||
confirmPaymentActivity.minFee = String.valueOf(finalFee);
|
||||
confirmPaymentActivity.minFeeInInternalUnits = confirmPaymentActivity.mCard.InternalUnitsFromString(String.valueOf(finalFee));
|
||||
} else if ((request.getBlockCount() == FeeRequest.NORMAL) && (confirmPaymentActivity.normalFee == null)) {
|
||||
confirmPaymentActivity.normalFee = String.valueOf(finalFee);
|
||||
} else if ((request.getBlockCount() == FeeRequest.PRIORITY) && (confirmPaymentActivity.maxFee == null)) {
|
||||
confirmPaymentActivity.maxFee = String.valueOf(finalFee);
|
||||
if ((request.getBlockCount() == FeeRequest.MINIMAL) && (confirmPaymentActivity.getMinFee() == null)) {
|
||||
confirmPaymentActivity.setMinFee(String.valueOf(finalFee));
|
||||
confirmPaymentActivity.setMinFeeInInternalUnits(confirmPaymentActivity.getCard().InternalUnitsFromString(String.valueOf(finalFee)));
|
||||
} else if ((request.getBlockCount() == FeeRequest.NORMAL) && (confirmPaymentActivity.getNormalFee() == null)) {
|
||||
confirmPaymentActivity.setNormalFee(String.valueOf(finalFee));
|
||||
} else if ((request.getBlockCount() == FeeRequest.PRIORITY) && (confirmPaymentActivity.getMaxFee() == null)) {
|
||||
confirmPaymentActivity.setMaxFee(String.valueOf(finalFee));
|
||||
}
|
||||
|
||||
confirmPaymentActivity.doSetFee(confirmPaymentActivity.rgFee.getCheckedRadioButtonId());
|
||||
confirmPaymentActivity.doSetFee(confirmPaymentActivity.getRgFee().getCheckedRadioButtonId());
|
||||
|
||||
confirmPaymentActivity.etFee.setError(null);
|
||||
confirmPaymentActivity.feeRequestSuccess = true;
|
||||
if (confirmPaymentActivity.feeRequestSuccess && confirmPaymentActivity.balanceRequestSuccess) {
|
||||
confirmPaymentActivity.btnSend.setVisibility(View.VISIBLE);
|
||||
confirmPaymentActivity.getEtFee().setError(null);
|
||||
confirmPaymentActivity.setFeeRequestSuccess(true);
|
||||
if (confirmPaymentActivity.getFeeRequestSuccess() && confirmPaymentActivity.getBalanceRequestSuccess()) {
|
||||
confirmPaymentActivity.getBtnSend().setVisibility(View.VISIBLE);
|
||||
}
|
||||
confirmPaymentActivity.dtVerifyed = new Date();
|
||||
confirmPaymentActivity.setDtVerified(new Date());
|
||||
|
||||
} else {
|
||||
|
||||
if (sharedCounter != null) {
|
||||
int errCounter = sharedCounter.errorRequest.incrementAndGet();
|
||||
if (errCounter >= sharedCounter.allRequest) {
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.finishActivityWithError(Activity.RESULT_CANCELED, "Cannot calculate fee! No connection with blockchain nodes");
|
||||
}
|
||||
} else {
|
||||
confirmPaymentActivity.progressBar.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.getProgressBar().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.finishActivityWithError(Activity.RESULT_CANCELED, "Cannot calculate fee! No connection with blockchain nodes");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,34 +42,34 @@ public class ConnectTask extends ElectrumTask {
|
|||
if (request.error == null) {
|
||||
if (request.isMethod(ElectrumRequest.METHOD_GetBalance)) {
|
||||
try {
|
||||
confirmPaymentActivity.etFee.setText("--");
|
||||
confirmPaymentActivity.getEtFee().setText("--");
|
||||
|
||||
//String mWalletAddress = request.getParams().getString(0);
|
||||
if ((request.getResult().getInt("confirmed") + request.getResult().getInt("unconfirmed")) / confirmPaymentActivity.mCard.getBlockchain().getMultiplier() * 1000000.0 < Float.parseFloat(confirmPaymentActivity.etAmount.getText().toString())) {
|
||||
confirmPaymentActivity.etFee.setError("Not enough funds");
|
||||
if ((request.getResult().getInt("confirmed") + request.getResult().getInt("unconfirmed")) / confirmPaymentActivity.getCard().getBlockchain().getMultiplier() * 1000000.0 < Float.parseFloat(confirmPaymentActivity.getEtAmount().getText().toString())) {
|
||||
confirmPaymentActivity.getEtFee().setError("Not enough funds");
|
||||
if (sharedCounter == null) {
|
||||
confirmPaymentActivity.balanceRequestSuccess = false;
|
||||
confirmPaymentActivity.btnSend.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.dtVerifyed = null;
|
||||
confirmPaymentActivity.nodeCheck = false;
|
||||
confirmPaymentActivity.setBalanceRequestSuccess(false);
|
||||
confirmPaymentActivity.getBtnSend().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.setDtVerified(null);
|
||||
confirmPaymentActivity.setNodeCheck(false);
|
||||
} else {
|
||||
int errCounter = sharedCounter.errorRequest.incrementAndGet();
|
||||
if (errCounter >= sharedCounter.allRequest) {
|
||||
confirmPaymentActivity.balanceRequestSuccess = false;
|
||||
confirmPaymentActivity.btnSend.setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.dtVerifyed = null;
|
||||
confirmPaymentActivity.nodeCheck = false;
|
||||
confirmPaymentActivity.setBalanceRequestSuccess(false);
|
||||
confirmPaymentActivity.getBtnSend().setVisibility(View.INVISIBLE);
|
||||
confirmPaymentActivity.setDtVerified(null);
|
||||
confirmPaymentActivity.setNodeCheck(false);
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
confirmPaymentActivity.etFee.setError(null);
|
||||
confirmPaymentActivity.balanceRequestSuccess = true;
|
||||
if (confirmPaymentActivity.feeRequestSuccess && confirmPaymentActivity.balanceRequestSuccess) {
|
||||
confirmPaymentActivity.btnSend.setVisibility(View.VISIBLE);
|
||||
confirmPaymentActivity.getEtFee().setError(null);
|
||||
confirmPaymentActivity.setBalanceRequestSuccess(true);
|
||||
if (confirmPaymentActivity.getFeeRequestSuccess() && confirmPaymentActivity.getBalanceRequestSuccess()) {
|
||||
confirmPaymentActivity.getBtnSend().setVisibility(View.VISIBLE);
|
||||
}
|
||||
confirmPaymentActivity.dtVerifyed = new Date();
|
||||
confirmPaymentActivity.nodeCheck = true;
|
||||
confirmPaymentActivity.setDtVerified(new Date());
|
||||
confirmPaymentActivity.setNodeCheck(true);
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
if (sharedCounter != null) {
|
||||
|
|
@ -85,7 +85,7 @@ public class ConnectTask extends ElectrumTask {
|
|||
}
|
||||
} else if (request.isMethod(ElectrumRequest.METHOD_GetFee)) {
|
||||
if (request.getResultString() == "-1") {
|
||||
confirmPaymentActivity.etFee.setText("3");
|
||||
confirmPaymentActivity.getEtFee().setText("3");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -39,21 +39,20 @@ public class ETHRequestTask extends InfuraTask {
|
|||
gasPrice = gasPrice.substring(2);
|
||||
BigInteger l = new BigInteger(gasPrice, 16);
|
||||
|
||||
BigInteger m = confirmPaymentActivity.mCard.getBlockchain() == Blockchain.Token ? BigInteger.valueOf(55000) : BigInteger.valueOf(21000);
|
||||
BigInteger m = confirmPaymentActivity.getCard().getBlockchain() == Blockchain.Token ? BigInteger.valueOf(55000) : BigInteger.valueOf(21000);
|
||||
l = l.multiply(m);
|
||||
String feeInGwei = confirmPaymentActivity.mCard.getAmountInGwei(String.valueOf(l));
|
||||
String feeInGwei = confirmPaymentActivity.getCard().getAmountInGwei(String.valueOf(l));
|
||||
|
||||
confirmPaymentActivity.minFee = feeInGwei;
|
||||
confirmPaymentActivity.maxFee = feeInGwei;
|
||||
confirmPaymentActivity.normalFee = feeInGwei;
|
||||
confirmPaymentActivity.etFee.setText(feeInGwei);
|
||||
confirmPaymentActivity.etFee.setError(null);
|
||||
confirmPaymentActivity.btnSend.setVisibility(View.VISIBLE);
|
||||
confirmPaymentActivity.feeRequestSuccess = true;
|
||||
confirmPaymentActivity.balanceRequestSuccess = true;
|
||||
|
||||
confirmPaymentActivity.dtVerifyed = new Date();
|
||||
confirmPaymentActivity.minFeeInInternalUnits = confirmPaymentActivity.mCard.InternalUnitsFromString(feeInGwei);
|
||||
confirmPaymentActivity.setMinFee(feeInGwei);
|
||||
confirmPaymentActivity.setMaxFee(feeInGwei);
|
||||
confirmPaymentActivity.setNormalFee(feeInGwei);
|
||||
confirmPaymentActivity.getEtFee().setText(feeInGwei);
|
||||
confirmPaymentActivity.getEtFee().setError(null);
|
||||
confirmPaymentActivity.getBtnSend().setVisibility(View.VISIBLE);
|
||||
confirmPaymentActivity.setFeeRequestSuccess(true);
|
||||
confirmPaymentActivity.setBalanceRequestSuccess(true);
|
||||
confirmPaymentActivity.setDtVerified(new Date());
|
||||
confirmPaymentActivity.setMinFeeInInternalUnits(confirmPaymentActivity.getCard().InternalUnitsFromString(feeInGwei));
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
|
|
@ -69,4 +68,5 @@ public class ETHRequestTask extends InfuraTask {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue