mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-04-19 15:26:03 -04:00
Fix missing timeout for offeravailability request, set offer state at timeout , cleanups
This commit is contained in:
parent
88812fcbb4
commit
ca4bf16b1d
@ -27,7 +27,6 @@ import io.bitsquare.p2p.messaging.DecryptedMailListener;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.availability.messages.OfferAvailabilityResponse;
|
||||
import io.bitsquare.trade.protocol.availability.messages.OfferMessage;
|
||||
import io.bitsquare.trade.protocol.availability.tasks.GetPeerAddress;
|
||||
import io.bitsquare.trade.protocol.availability.tasks.ProcessOfferAvailabilityResponse;
|
||||
import io.bitsquare.trade.protocol.availability.tasks.SendOfferAvailabilityRequest;
|
||||
import org.slf4j.Logger;
|
||||
@ -38,7 +37,7 @@ import static io.bitsquare.util.Validator.nonEmptyStringOf;
|
||||
public class OfferAvailabilityProtocol {
|
||||
private static final Logger log = LoggerFactory.getLogger(OfferAvailabilityProtocol.class);
|
||||
|
||||
private static final long TIMEOUT_SEC = 30;
|
||||
private static final long TIMEOUT_SEC = 10;
|
||||
|
||||
private final OfferAvailabilityModel model;
|
||||
private final ResultHandler resultHandler;
|
||||
@ -82,16 +81,16 @@ public class OfferAvailabilityProtocol {
|
||||
// Called from UI
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
public void checkOfferAvailability() {
|
||||
public void sendOfferAvailabilityRequest() {
|
||||
// reset
|
||||
model.offer.setState(Offer.State.UNDEFINED);
|
||||
|
||||
model.p2PService.addDecryptedMailListener(decryptedMailListener);
|
||||
|
||||
model.setPeerAddress(model.offer.getOffererAddress());
|
||||
|
||||
taskRunner = new TaskRunner<>(model,
|
||||
() -> {
|
||||
log.debug("sequence at onCheckOfferAvailability completed");
|
||||
stopTimeout();
|
||||
log.debug("sequence at sendOfferAvailabilityRequest completed");
|
||||
},
|
||||
(errorMessage) -> {
|
||||
log.error(errorMessage);
|
||||
@ -99,10 +98,7 @@ public class OfferAvailabilityProtocol {
|
||||
errorMessageHandler.handleErrorMessage(errorMessage);
|
||||
}
|
||||
);
|
||||
taskRunner.addTasks(
|
||||
GetPeerAddress.class,
|
||||
SendOfferAvailabilityRequest.class
|
||||
);
|
||||
taskRunner.addTasks(SendOfferAvailabilityRequest.class);
|
||||
startTimeout();
|
||||
taskRunner.run();
|
||||
}
|
||||
@ -144,6 +140,7 @@ public class OfferAvailabilityProtocol {
|
||||
timeoutTimer = UserThread.runAfter(() -> {
|
||||
Utilities.setThreadName("OfferAvailabilityProtocol:Timeout");
|
||||
log.warn("Timeout reached");
|
||||
model.offer.setState(Offer.State.OFFERER_OFFLINE);
|
||||
errorMessageHandler.handleErrorMessage("Timeout reached: Peer has not responded.");
|
||||
}, TIMEOUT_SEC);
|
||||
}
|
||||
|
@ -37,9 +37,8 @@ public final class OfferAvailabilityRequest extends OfferMessage {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "RequestIsOfferAvailableMessage{" +
|
||||
"\nofferId=" + offerId +
|
||||
"\npubKeyRing=" + pubKeyRing != null ? pubKeyRing.toString() : "null" +
|
||||
'}';
|
||||
return "OfferAvailabilityRequest{" +
|
||||
"pubKeyRing=" + pubKeyRing +
|
||||
"} " + super.toString();
|
||||
}
|
||||
}
|
||||
|
@ -29,4 +29,11 @@ public final class OfferAvailabilityResponse extends OfferMessage {
|
||||
super(offerId);
|
||||
this.isAvailable = isAvailable;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "OfferAvailabilityResponse{" +
|
||||
"isAvailable=" + isAvailable +
|
||||
"} " + super.toString();
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user