From a856fa36d3959b5b15d3430074eca39d7fa3812f Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Wed, 27 Jan 2016 18:26:51 +0100 Subject: [PATCH] Refactor handshake out for peers request --- .../OfferAvailabilityProtocol.java | 16 +- .../settings/network/NetworkSettingsView.fxml | 5 +- .../java/io/bitsquare/p2p/P2PService.java | 9 +- .../p2p/peers/PeerExchangeHandshake.java | 208 +++++++++++++++ .../p2p/peers/PeerExchangeManager.java | 246 +++++++----------- .../io/bitsquare/p2p/peers/PeerManager.java | 8 +- .../p2p/peers/RequestDataHandshake.java | 102 +++++--- .../p2p/peers/RequestDataManager.java | 35 ++- .../peers/messages/peers/GetPeersRequest.java | 5 +- .../messages/peers/GetPeersResponse.java | 7 +- 10 files changed, 405 insertions(+), 236 deletions(-) create mode 100644 network/src/main/java/io/bitsquare/p2p/peers/PeerExchangeHandshake.java diff --git a/core/src/main/java/io/bitsquare/trade/protocol/availability/OfferAvailabilityProtocol.java b/core/src/main/java/io/bitsquare/trade/protocol/availability/OfferAvailabilityProtocol.java index bb1115ec52..0bd7e0dff0 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/availability/OfferAvailabilityProtocol.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/availability/OfferAvailabilityProtocol.java @@ -134,13 +134,15 @@ public class OfferAvailabilityProtocol { } private void startTimeout() { - stopTimeout(); - - timeoutTimer = UserThread.runAfter(() -> { - log.warn("Timeout reached"); - model.offer.setState(Offer.State.OFFERER_OFFLINE); - errorMessageHandler.handleErrorMessage("Timeout reached: Peer has not responded."); - }, TIMEOUT_SEC); + if (timeoutTimer == null) { + timeoutTimer = UserThread.runAfter(() -> { + log.warn("Timeout reached at " + this); + model.offer.setState(Offer.State.OFFERER_OFFLINE); + errorMessageHandler.handleErrorMessage("Timeout reached: Peer has not responded."); + }, TIMEOUT_SEC); + } else { + log.warn("timeoutTimer already created. That must not happen."); + } } private void stopTimeout() { diff --git a/gui/src/main/java/io/bitsquare/gui/main/settings/network/NetworkSettingsView.fxml b/gui/src/main/java/io/bitsquare/gui/main/settings/network/NetworkSettingsView.fxml index 7d31c43261..eefcb5963f 100644 --- a/gui/src/main/java/io/bitsquare/gui/main/settings/network/NetworkSettingsView.fxml +++ b/gui/src/main/java/io/bitsquare/gui/main/settings/network/NetworkSettingsView.fxml @@ -38,8 +38,7 @@