mirror of
https://github.com/haveno-dex/haveno.git
synced 2026-01-09 03:21:09 -05:00
resend payment received message until acked within window
This commit is contained in:
parent
67103b76d2
commit
1742f03d00
3 changed files with 6 additions and 8 deletions
|
|
@ -71,7 +71,7 @@ public abstract class SellerTrade extends Trade {
|
|||
public boolean needsToResendPaymentReceivedMessages() {
|
||||
boolean hasNoPaymentReceivedMessages = getBuyer().getPaymentReceivedMessage() == null && getArbitrator().getPaymentReceivedMessage() == null;
|
||||
if (!walletExistsNoSync() && !hasNoPaymentReceivedMessages) return false; // cannot provide any updated state
|
||||
return !isShutDownStarted() && getState().ordinal() >= Trade.State.SELLER_SENT_PAYMENT_RECEIVED_MSG.ordinal() && !getProcessModel().isPaymentReceivedMessagesAckedOrNacked() && resendPaymentReceivedMessagesEnabled() && resendPaymentReceivedMessagesWithinDuration();
|
||||
return !isShutDownStarted() && getState().ordinal() >= Trade.State.SELLER_SENT_PAYMENT_RECEIVED_MSG.ordinal() && !getProcessModel().isPaymentReceivedMessagesAcked() && resendPaymentReceivedMessagesEnabled() && resendPaymentReceivedMessagesWithinDuration();
|
||||
}
|
||||
|
||||
private boolean resendPaymentReceivedMessagesEnabled() {
|
||||
|
|
|
|||
|
|
@ -1999,17 +1999,15 @@ public abstract class Trade extends XmrWalletBase implements Tradable, Model {
|
|||
}
|
||||
|
||||
// TODO: clear other process data
|
||||
if (processModel.isPaymentReceivedMessagesAckedOrNacked()) setPayoutTxHex(null);
|
||||
if (isPayoutFinalized() || processModel.isPaymentReceivedMessagesAcked()) setPayoutTxHex(null);
|
||||
for (TradePeer peer : getAllPeers()) {
|
||||
peer.setUpdatedMultisigHex(null);
|
||||
peer.setDisputeClosedMessage(null);
|
||||
peer.setPaymentSentMessage(null);
|
||||
peer.setDepositTxHex(null);
|
||||
peer.setDepositTxKey(null);
|
||||
if (peer.isPaymentReceivedMessageAckedOrNacked()) {
|
||||
peer.setUnsignedPayoutTxHex(null);
|
||||
peer.setPaymentReceivedMessage(null);
|
||||
}
|
||||
if (peer.isPaymentReceivedMessageAckedOrNacked() || isPayoutFinalized()) peer.setUnsignedPayoutTxHex(null);
|
||||
if (peer.isPaymentReceivedMessageAckedOrNacked()) peer.setPaymentReceivedMessage(null);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -309,8 +309,8 @@ public class ProcessModel implements Model, PersistablePayload {
|
|||
return getP2PService().getAddress();
|
||||
}
|
||||
|
||||
public boolean isPaymentReceivedMessagesAckedOrNacked() {
|
||||
return getArbitrator().isPaymentReceivedMessageAckedOrNacked() && getBuyer().isPaymentReceivedMessageAckedOrNacked();
|
||||
public boolean isPaymentReceivedMessagesAcked() {
|
||||
return getArbitrator().isPaymentReceivedMessageAcked() && getBuyer().isPaymentReceivedMessageAcked();
|
||||
}
|
||||
|
||||
public boolean isDisputeOpenedMessageAckedOrNacked() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue