From 12bea799f3ef0b72a7a86a42cf47bab048454a04 Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Sat, 21 Mar 2015 11:48:57 +0100 Subject: [PATCH] Rename process classes --- .../bitsquare/gui/main/debug/DebugView.java | 20 ++-- .../p2p/MailboxMessagesResultHandler.java | 2 +- .../java/io/bitsquare/trade/TradeManager.java | 101 ++++++++++-------- .../messages/DepositTxPublishedMessage.java | 4 +- .../protocol/trade/messages/OfferMessage.java | 2 +- .../messages/PayoutTxPublishedMessage.java | 4 +- ...=> RequestTakerDepositPaymentMessage.java} | 14 +-- .../protocol/trade/messages/TradeMessage.java | 2 +- ...tocol.java => OffererAsBuyerProtocol.java} | 38 ++++--- .../{OffererModel.java => Offerer.java} | 2 +- ...rerModel.java => OffererAsBuyerModel.java} | 18 ++-- .../models/{TakerModel.java => Taker.java} | 2 +- .../offerer/tasks/CreateAndSignPayoutTx.java | 6 +- .../tasks/CreateOffererDepositTxInputs.java | 6 +- .../ProcessPayoutTxPublishedMessage.java | 6 +- .../ProcessRequestDepositTxInputsMessage.java | 6 +- ...RequestOffererPublishDepositTxMessage.java | 6 +- ...t.java => RequestTakerDepositPayment.java} | 12 +-- .../tasks/SendBankTransferStartedMessage.java | 6 +- ...ToTaker.java => SendDepositTxToTaker.java} | 8 +- ...etupListenerForBlockChainConfirmation.java | 6 +- .../tasks/SignAndPublishDepositTx.java | 6 +- .../offerer/tasks/VerifyAndSignContract.java | 6 +- .../tasks/VerifyTakeOfferFeePayment.java | 6 +- .../offerer/tasks/VerifyTakerAccount.java | 6 +- ...otocol.java => TakerAsSellerProtocol.java} | 38 +++---- .../{OffererModel.java => Offerer.java} | 2 +- .../models/{TakerModel.java => Taker.java} | 2 +- ...akerModel.java => TakerAsSellerModel.java} | 18 ++-- .../taker/tasks/BroadcastTakeOfferFeeTx.java | 6 +- .../taker/tasks/CreateAndSignContract.java | 6 +- .../taker/tasks/CreateTakeOfferFeeTx.java | 6 +- .../ProcessDepositTxPublishedMessage.java | 6 +- .../ProcessFiatTransferStartedMessage.java | 9 +- ...essRequestTakerDepositPaymentMessage.java} | 12 +-- .../taker/tasks/SendPayoutTxToOfferer.java | 6 +- .../SendRequestDepositTxInputsMessage.java | 6 +- .../taker/tasks/SendSignedTakerDepositTx.java | 6 +- .../taker/tasks/SignAndPublishPayoutTx.java | 6 +- .../taker/tasks/TakerCommitDepositTx.java | 6 +- .../tasks/TakerCreatesAndSignsDepositTx.java | 6 +- .../taker/tasks/VerifyOfferFeePayment.java | 6 +- .../taker/tasks/VerifyOffererAccount.java | 6 +- 43 files changed, 238 insertions(+), 210 deletions(-) rename core/src/main/java/io/bitsquare/trade/protocol/trade/messages/{RequestDepositPaymentMessage.java => RequestTakerDepositPaymentMessage.java} (73%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/{BuyerAsOffererProtocol.java => OffererAsBuyerProtocol.java} (87%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/{OffererModel.java => Offerer.java} (97%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/{BuyerAsOffererModel.java => OffererAsBuyerModel.java} (88%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/{TakerModel.java => Taker.java} (96%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/{RequestDepositPayment.java => RequestTakerDepositPayment.java} (79%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/{SendDepositTxIdToTaker.java => SendDepositTxToTaker.java} (86%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/taker/{SellerAsTakerProtocol.java => TakerAsSellerProtocol.java} (87%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/{OffererModel.java => Offerer.java} (96%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/{TakerModel.java => Taker.java} (97%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/{SellerAsTakerModel.java => TakerAsSellerModel.java} (89%) rename core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/{ProcessRequestDepositPaymentMessage.java => ProcessRequestTakerDepositPaymentMessage.java} (78%) diff --git a/core/src/main/java/io/bitsquare/gui/main/debug/DebugView.java b/core/src/main/java/io/bitsquare/gui/main/debug/DebugView.java index 1890e81c68..c8d9064d15 100644 --- a/core/src/main/java/io/bitsquare/gui/main/debug/DebugView.java +++ b/core/src/main/java/io/bitsquare/gui/main/debug/DebugView.java @@ -28,26 +28,26 @@ import io.bitsquare.trade.protocol.placeoffer.tasks.AddOfferToRemoteOfferBook; import io.bitsquare.trade.protocol.placeoffer.tasks.BroadcastCreateOfferFeeTx; import io.bitsquare.trade.protocol.placeoffer.tasks.CreateOfferFeeTx; import io.bitsquare.trade.protocol.placeoffer.tasks.ValidateOffer; -import io.bitsquare.trade.protocol.trade.offerer.BuyerAsOffererProtocol; +import io.bitsquare.trade.protocol.trade.offerer.OffererAsBuyerProtocol; import io.bitsquare.trade.protocol.trade.offerer.tasks.CreateAndSignPayoutTx; import io.bitsquare.trade.protocol.trade.offerer.tasks.CreateOffererDepositTxInputs; import io.bitsquare.trade.protocol.trade.offerer.tasks.ProcessPayoutTxPublishedMessage; import io.bitsquare.trade.protocol.trade.offerer.tasks.ProcessRequestDepositTxInputsMessage; import io.bitsquare.trade.protocol.trade.offerer.tasks.ProcessRequestOffererPublishDepositTxMessage; -import io.bitsquare.trade.protocol.trade.offerer.tasks.RequestDepositPayment; +import io.bitsquare.trade.protocol.trade.offerer.tasks.RequestTakerDepositPayment; import io.bitsquare.trade.protocol.trade.offerer.tasks.SendBankTransferStartedMessage; -import io.bitsquare.trade.protocol.trade.offerer.tasks.SendDepositTxIdToTaker; +import io.bitsquare.trade.protocol.trade.offerer.tasks.SendDepositTxToTaker; import io.bitsquare.trade.protocol.trade.offerer.tasks.SetupListenerForBlockChainConfirmation; import io.bitsquare.trade.protocol.trade.offerer.tasks.SignAndPublishDepositTx; import io.bitsquare.trade.protocol.trade.offerer.tasks.VerifyAndSignContract; import io.bitsquare.trade.protocol.trade.offerer.tasks.VerifyTakeOfferFeePayment; import io.bitsquare.trade.protocol.trade.offerer.tasks.VerifyTakerAccount; -import io.bitsquare.trade.protocol.trade.taker.SellerAsTakerProtocol; +import io.bitsquare.trade.protocol.trade.taker.TakerAsSellerProtocol; import io.bitsquare.trade.protocol.trade.taker.tasks.CreateAndSignContract; import io.bitsquare.trade.protocol.trade.taker.tasks.CreateTakeOfferFeeTx; import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessFiatTransferStartedMessage; import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessDepositTxPublishedMessage; -import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessRequestDepositPaymentMessage; +import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessRequestTakerDepositPaymentMessage; import io.bitsquare.trade.protocol.trade.taker.tasks.SendPayoutTxToOfferer; import io.bitsquare.trade.protocol.trade.taker.tasks.SendRequestDepositTxInputsMessage; import io.bitsquare.trade.protocol.trade.taker.tasks.SendSignedTakerDepositTx; @@ -101,17 +101,17 @@ public class DebugView extends InitializableView { /*---- Protocol ----*/ - BuyerAsOffererProtocol.class, + OffererAsBuyerProtocol.class, ProcessRequestDepositTxInputsMessage.class, CreateOffererDepositTxInputs.class, - RequestDepositPayment.class, + RequestTakerDepositPayment.class, ProcessRequestOffererPublishDepositTxMessage.class, VerifyTakerAccount.class, VerifyAndSignContract.class, SignAndPublishDepositTx.class, SetupListenerForBlockChainConfirmation.class, - SendDepositTxIdToTaker.class, + SendDepositTxToTaker.class, CreateAndSignPayoutTx.class, VerifyTakeOfferFeePayment.class, @@ -122,11 +122,11 @@ public class DebugView extends InitializableView { /*---- Protocol ----*/ - SellerAsTakerProtocol.class, + TakerAsSellerProtocol.class, CreateTakeOfferFeeTx.class, SendRequestDepositTxInputsMessage.class, - ProcessRequestDepositPaymentMessage.class, + ProcessRequestTakerDepositPaymentMessage.class, VerifyOffererAccount.class, CreateAndSignContract.class, TakerCreatesAndSignsDepositTx.class, diff --git a/core/src/main/java/io/bitsquare/p2p/MailboxMessagesResultHandler.java b/core/src/main/java/io/bitsquare/p2p/MailboxMessagesResultHandler.java index 559343b2f1..35d9e9dd27 100644 --- a/core/src/main/java/io/bitsquare/p2p/MailboxMessagesResultHandler.java +++ b/core/src/main/java/io/bitsquare/p2p/MailboxMessagesResultHandler.java @@ -20,5 +20,5 @@ package io.bitsquare.p2p; import java.util.List; public interface MailboxMessagesResultHandler { - void handleResult(List messages); + void handleResult(List encryptedMailboxMessages); } diff --git a/core/src/main/java/io/bitsquare/trade/TradeManager.java b/core/src/main/java/io/bitsquare/trade/TradeManager.java index 95c6a1497c..e5b4162b3e 100644 --- a/core/src/main/java/io/bitsquare/trade/TradeManager.java +++ b/core/src/main/java/io/bitsquare/trade/TradeManager.java @@ -45,10 +45,10 @@ import io.bitsquare.trade.protocol.availability.messages.RequestIsOfferAvailable import io.bitsquare.trade.protocol.placeoffer.PlaceOfferModel; import io.bitsquare.trade.protocol.placeoffer.PlaceOfferProtocol; import io.bitsquare.trade.protocol.trade.messages.TradeMessage; -import io.bitsquare.trade.protocol.trade.offerer.BuyerAsOffererProtocol; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; -import io.bitsquare.trade.protocol.trade.taker.SellerAsTakerProtocol; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.offerer.OffererAsBuyerProtocol; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; +import io.bitsquare.trade.protocol.trade.taker.TakerAsSellerProtocol; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import io.bitsquare.user.AccountSettings; import io.bitsquare.user.User; @@ -86,8 +86,8 @@ public class TradeManager { private EncryptionService encryptionService; private final OfferBookService offerBookService; - private final Map sellerAsTakerProtocolMap = new HashMap<>(); - private final Map buyerAcceptsOfferProtocolMap = new HashMap<>(); + private final Map takerAsSellerProtocolMap = new HashMap<>(); + private final Map offererAsBuyerProtocolMap = new HashMap<>(); private final Map checkOfferAvailabilityProtocolMap = new HashMap<>(); private final ObservableMap openOffers = FXCollections.observableHashMap(); @@ -144,7 +144,7 @@ public class TradeManager { // BuyerAcceptsOfferProtocol listens for take offer requests, so we need to instantiate it early. public void onAllServicesInitialized() { for (Map.Entry entry : openOffers.entrySet()) { - createBuyerAcceptsOfferProtocol(entry.getValue()); + createOffererAsBuyerProtocol(entry.getValue()); } for (Map.Entry entry : pendingTrades.entrySet()) { Trade trade = entry.getValue(); @@ -154,7 +154,7 @@ public class TradeManager { else { Offer offer = trade.getOffer(); if (isMyOffer(offer)) { - createBuyerAcceptsOfferProtocol(offer); + createOffererAsBuyerProtocol(offer); } else { CheckOfferAvailabilityModel model = new CheckOfferAvailabilityModel(offer, messageService, addressService); @@ -163,7 +163,7 @@ public class TradeManager { disposeCheckOfferAvailabilityRequest(offer); // TODO need to check that trade hijacking is not possible (taking trades form other peers) if (offer.getState() == Offer.State.AVAILABLE || offer.getState() == Offer.State.RESERVED) { - createSellerAsTakerProtocol(trade, model.getPeer()); + createTakerAsSellerProtocol(trade, model.getPeer()); } }, (errorMessage) -> disposeCheckOfferAvailabilityRequest(offer)); @@ -174,8 +174,8 @@ public class TradeManager { } mailboxService.getAllMessages(user.getP2PSigPubKey(), - (messages) -> { - decryptMailboxMessages(messages); + (encryptedMailboxMessages) -> { + decryptMailboxMessages(encryptedMailboxMessages); emptyMailbox(); }); @@ -222,7 +222,7 @@ public class TradeManager { (transaction) -> { openOffers.put(offer.getId(), offer); persistOpenOffers(); - createBuyerAcceptsOfferProtocol(offer); + createOffererAsBuyerProtocol(offer); resultHandler.handleResult(transaction); }, (message) -> errorMessageHandler.handleErrorMessage(message) @@ -286,14 +286,14 @@ public class TradeManager { public void onFiatPaymentStarted(String tradeId) { // TODO remove if check when persistence is impl. - if (buyerAcceptsOfferProtocolMap.containsKey(tradeId)) { - buyerAcceptsOfferProtocolMap.get(tradeId).onFiatPaymentStarted(); + if (offererAsBuyerProtocolMap.containsKey(tradeId)) { + offererAsBuyerProtocolMap.get(tradeId).onFiatPaymentStarted(); persistPendingTrades(); } } public void onFiatPaymentReceived(String tradeId) { - sellerAsTakerProtocolMap.get(tradeId).onFiatPaymentReceived(); + takerAsSellerProtocolMap.get(tradeId).onFiatPaymentReceived(); } public void onWithdrawAtTradeCompleted(Trade trade) { @@ -377,9 +377,9 @@ public class TradeManager { openOffers.remove(offerId); disposeCheckOfferAvailabilityRequest(offer); persistOpenOffers(); - if (removeFromBuyerAcceptsOfferProtocolMap && buyerAcceptsOfferProtocolMap.containsKey(offerId)) { - buyerAcceptsOfferProtocolMap.get(offerId).cleanup(); - buyerAcceptsOfferProtocolMap.remove(offerId); + if (removeFromBuyerAcceptsOfferProtocolMap && offererAsBuyerProtocolMap.containsKey(offerId)) { + offererAsBuyerProtocolMap.get(offerId).cleanup(); + offererAsBuyerProtocolMap.remove(offerId); } resultHandler.handleResult(); @@ -415,7 +415,7 @@ public class TradeManager { Trade trade = createTrade(offer); trade.setTradeAmount(amount); - SellerAsTakerProtocol sellerTakesOfferProtocol = createSellerAsTakerProtocol(trade, peer); + TakerAsSellerProtocol sellerTakesOfferProtocol = createTakerAsSellerProtocol(trade, peer); sellerTakesOfferProtocol.takeAvailableOffer(); return trade; } @@ -433,7 +433,7 @@ public class TradeManager { return trade; } - private SellerAsTakerProtocol createSellerAsTakerProtocol(Trade trade, Peer peer) { + private TakerAsSellerProtocol createTakerAsSellerProtocol(Trade trade, Peer peer) { trade.stateProperty().addListener((ov, oldValue, newValue) -> { log.debug("trade state = " + newValue); switch (newValue) { @@ -457,7 +457,7 @@ public class TradeManager { } }); - SellerAsTakerModel model = new SellerAsTakerModel( + TakerAsSellerModel model = new TakerAsSellerModel( trade, peer, messageService, @@ -468,17 +468,17 @@ public class TradeManager { user, persistence); - SellerAsTakerProtocol sellerTakesOfferProtocol = new SellerAsTakerProtocol(model); - sellerAsTakerProtocolMap.put(trade.getId(), sellerTakesOfferProtocol); + TakerAsSellerProtocol protocol = new TakerAsSellerProtocol(model); + takerAsSellerProtocolMap.put(trade.getId(), protocol); if (mailboxMessages.containsKey(trade.getId())) - sellerTakesOfferProtocol.setMailboxMessage(mailboxMessages.get(trade.getId())); + protocol.setMailboxMessage(mailboxMessages.get(trade.getId())); - return sellerTakesOfferProtocol; + return protocol; } - private void createBuyerAcceptsOfferProtocol(Offer offer) { + private void createOffererAsBuyerProtocol(Offer offer) { Trade trade; if (pendingTrades.containsKey(offer.getId())) { trade = pendingTrades.get(offer.getId()); @@ -489,7 +489,7 @@ public class TradeManager { // don't save it in pendingTrades. It is only a potential trade } - BuyerAsOffererModel model = new BuyerAsOffererModel( + OffererAsBuyerModel model = new OffererAsBuyerModel( trade, messageService, mailboxService, @@ -531,7 +531,7 @@ public class TradeManager { case MESSAGE_SENDING_FAILED: case FAULT: closeTrade(trade); - buyerAcceptsOfferProtocolMap.get(trade.getId()).cleanup(); + offererAsBuyerProtocolMap.get(trade.getId()).cleanup(); break; default: log.warn("Unhandled trade state: " + newValue); @@ -539,8 +539,11 @@ public class TradeManager { } }); - BuyerAsOffererProtocol buyerAcceptsOfferProtocol = new BuyerAsOffererProtocol(model); - buyerAcceptsOfferProtocolMap.put(offer.getId(), buyerAcceptsOfferProtocol); + OffererAsBuyerProtocol protocol = new OffererAsBuyerProtocol(model); + offererAsBuyerProtocolMap.put(offer.getId(), protocol); + if (mailboxMessages.containsKey(trade.getId())) + protocol.setMailboxMessage(mailboxMessages.get(trade.getId())); + } private void closeTrade(Trade trade) { @@ -549,13 +552,13 @@ public class TradeManager { persistPendingTrades(); } - if (sellerAsTakerProtocolMap.containsKey(trade.getId())) { - sellerAsTakerProtocolMap.get(trade.getId()).cleanup(); - sellerAsTakerProtocolMap.remove(trade.getId()); + if (takerAsSellerProtocolMap.containsKey(trade.getId())) { + takerAsSellerProtocolMap.get(trade.getId()).cleanup(); + takerAsSellerProtocolMap.remove(trade.getId()); } - else if (buyerAcceptsOfferProtocolMap.containsKey(trade.getId())) { - buyerAcceptsOfferProtocolMap.get(trade.getId()).cleanup(); - buyerAcceptsOfferProtocolMap.remove(trade.getId()); + else if (offererAsBuyerProtocolMap.containsKey(trade.getId())) { + offererAsBuyerProtocolMap.get(trade.getId()).cleanup(); + offererAsBuyerProtocolMap.remove(trade.getId()); } if (!closedTrades.containsKey(trade.getId())) { @@ -572,22 +575,26 @@ public class TradeManager { private void decryptMailboxMessages(List encryptedMailboxMessages) { log.trace("applyMailboxMessage encryptedMailboxMessage.size=" + encryptedMailboxMessages.size()); for (EncryptedMailboxMessage encrypted : encryptedMailboxMessages) { - MailboxMessage mailboxMessage = null; try { - mailboxMessage = encryptionService.decryptToObject(user.getP2pEncryptPrivateKey(), encrypted.getEncryptionPackage()); + MailboxMessage mailboxMessage = encryptionService.decryptToObject(user.getP2pEncryptPrivateKey(), encrypted.getEncryptionPackage()); + + if (mailboxMessage instanceof TradeMessage) { + String tradeId = ((TradeMessage) mailboxMessage).tradeId; + mailboxMessages.put(tradeId, mailboxMessage); + log.trace("mailboxMessage with tradeID " + tradeId); + if (takerAsSellerProtocolMap.containsKey(tradeId)) { + takerAsSellerProtocolMap.get(tradeId).setMailboxMessage(encrypted); + log.trace("sellerAsTakerProtocolMap exist with tradeID " + tradeId); + } + if (offererAsBuyerProtocolMap.containsKey(tradeId)) { + offererAsBuyerProtocolMap.get(tradeId).setMailboxMessage(encrypted); + log.trace("buyerAcceptsOfferProtocolMap exist with tradeID " + tradeId); + } + } } catch (Throwable e) { e.printStackTrace(); log.error(e.getMessage()); } - if (mailboxMessage instanceof TradeMessage) { - String tradeId = ((TradeMessage) mailboxMessage).tradeId; - mailboxMessages.put(tradeId, mailboxMessage); - log.trace("mailboxMessage with tradeID " + tradeId); - if (sellerAsTakerProtocolMap.containsKey(tradeId)) { - sellerAsTakerProtocolMap.get(tradeId).setMailboxMessage(encrypted); - log.trace("sellerAsTakerProtocolMap exist with tradeID " + tradeId); - } - } } } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/DepositTxPublishedMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/DepositTxPublishedMessage.java index 6eab376fb1..8e1ab4b4d2 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/DepositTxPublishedMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/DepositTxPublishedMessage.java @@ -17,11 +17,13 @@ package io.bitsquare.trade.protocol.trade.messages; +import io.bitsquare.p2p.MailboxMessage; + import org.bitcoinj.core.Transaction; import java.io.Serializable; -public class DepositTxPublishedMessage extends TradeMessage implements Serializable { +public class DepositTxPublishedMessage extends TradeMessage implements MailboxMessage, Serializable { private static final long serialVersionUID = -1532231540167406581L; public final Transaction depositTx; diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/OfferMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/OfferMessage.java index 8bd66c1625..03cb6b5f35 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/OfferMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/OfferMessage.java @@ -21,7 +21,7 @@ import io.bitsquare.p2p.Message; import java.io.Serializable; -public class OfferMessage implements Message, Serializable { +public abstract class OfferMessage implements Message, Serializable { private static final long serialVersionUID = -89035992124170905L; public String offerId; diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/PayoutTxPublishedMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/PayoutTxPublishedMessage.java index 4db473576b..c93b9d9b52 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/PayoutTxPublishedMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/PayoutTxPublishedMessage.java @@ -17,11 +17,13 @@ package io.bitsquare.trade.protocol.trade.messages; +import io.bitsquare.p2p.MailboxMessage; + import org.bitcoinj.core.Transaction; import java.io.Serializable; -public class PayoutTxPublishedMessage extends TradeMessage implements Serializable { +public class PayoutTxPublishedMessage extends TradeMessage implements MailboxMessage, Serializable { private static final long serialVersionUID = 1288653559218403873L; public final Transaction payoutTx; diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/RequestDepositPaymentMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/RequestTakerDepositPaymentMessage.java similarity index 73% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/messages/RequestDepositPaymentMessage.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/messages/RequestTakerDepositPaymentMessage.java index 2809581b32..470aaa79bb 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/RequestDepositPaymentMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/RequestTakerDepositPaymentMessage.java @@ -25,7 +25,7 @@ import java.io.Serializable; import java.util.List; -public class RequestDepositPaymentMessage extends TradeMessage implements Serializable { +public class RequestTakerDepositPaymentMessage extends TradeMessage implements Serializable { private static final long serialVersionUID = -3988720410493712913L; public final List offererConnectedOutputsForAllInputs; @@ -34,12 +34,12 @@ public class RequestDepositPaymentMessage extends TradeMessage implements Serial public final FiatAccount offererFiatAccount; public final String offererAccountId; - public RequestDepositPaymentMessage(String tradeId, - List offererConnectedOutputsForAllInputs, - List offererOutputs, - byte[] offererPubKey, - FiatAccount offererFiatAccount, - String offererAccountId) { + public RequestTakerDepositPaymentMessage(String tradeId, + List offererConnectedOutputsForAllInputs, + List offererOutputs, + byte[] offererPubKey, + FiatAccount offererFiatAccount, + String offererAccountId) { this.tradeId = tradeId; this.offererConnectedOutputsForAllInputs = offererConnectedOutputsForAllInputs; this.offererOutputs = offererOutputs; diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/TradeMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/TradeMessage.java index 42ade5ab17..6cebad04db 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/TradeMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/messages/TradeMessage.java @@ -21,7 +21,7 @@ import io.bitsquare.p2p.Message; import java.io.Serializable; -public class TradeMessage implements Message, Serializable { +public abstract class TradeMessage implements Message, Serializable { private static final long serialVersionUID = 7572470983485004081L; public String tradeId; diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/BuyerAsOffererProtocol.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/OffererAsBuyerProtocol.java similarity index 87% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/BuyerAsOffererProtocol.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/OffererAsBuyerProtocol.java index 98567a95fc..c80e668d63 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/BuyerAsOffererProtocol.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/OffererAsBuyerProtocol.java @@ -18,6 +18,7 @@ package io.bitsquare.trade.protocol.trade.offerer; import io.bitsquare.common.taskrunner.TaskRunner; +import io.bitsquare.p2p.MailboxMessage; import io.bitsquare.p2p.Message; import io.bitsquare.p2p.MessageHandler; import io.bitsquare.p2p.Peer; @@ -26,15 +27,15 @@ import io.bitsquare.trade.protocol.trade.messages.PayoutTxPublishedMessage; import io.bitsquare.trade.protocol.trade.messages.RequestDepositTxInputsMessage; import io.bitsquare.trade.protocol.trade.messages.RequestOffererPublishDepositTxMessage; import io.bitsquare.trade.protocol.trade.messages.TradeMessage; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import io.bitsquare.trade.protocol.trade.offerer.tasks.CreateAndSignPayoutTx; import io.bitsquare.trade.protocol.trade.offerer.tasks.CreateOffererDepositTxInputs; import io.bitsquare.trade.protocol.trade.offerer.tasks.ProcessPayoutTxPublishedMessage; import io.bitsquare.trade.protocol.trade.offerer.tasks.ProcessRequestDepositTxInputsMessage; import io.bitsquare.trade.protocol.trade.offerer.tasks.ProcessRequestOffererPublishDepositTxMessage; -import io.bitsquare.trade.protocol.trade.offerer.tasks.RequestDepositPayment; +import io.bitsquare.trade.protocol.trade.offerer.tasks.RequestTakerDepositPayment; import io.bitsquare.trade.protocol.trade.offerer.tasks.SendBankTransferStartedMessage; -import io.bitsquare.trade.protocol.trade.offerer.tasks.SendDepositTxIdToTaker; +import io.bitsquare.trade.protocol.trade.offerer.tasks.SendDepositTxToTaker; import io.bitsquare.trade.protocol.trade.offerer.tasks.SetupListenerForBlockChainConfirmation; import io.bitsquare.trade.protocol.trade.offerer.tasks.SignAndPublishDepositTx; import io.bitsquare.trade.protocol.trade.offerer.tasks.VerifyAndSignContract; @@ -50,10 +51,10 @@ import org.slf4j.LoggerFactory; import static io.bitsquare.util.Validator.*; -public class BuyerAsOffererProtocol { - private static final Logger log = LoggerFactory.getLogger(BuyerAsOffererProtocol.class); +public class OffererAsBuyerProtocol { + private static final Logger log = LoggerFactory.getLogger(OffererAsBuyerProtocol.class); - private final BuyerAsOffererModel model; + private final OffererAsBuyerModel model; private final MessageHandler messageHandler; private TransactionConfidence.Listener transactionConfidenceListener; @@ -63,7 +64,7 @@ public class BuyerAsOffererProtocol { // Constructor /////////////////////////////////////////////////////////////////////////////////////////// - public BuyerAsOffererProtocol(BuyerAsOffererModel model) { + public OffererAsBuyerProtocol(OffererAsBuyerModel model) { log.debug("New BuyerAsOffererProtocol " + this); this.model = model; messageHandler = this::handleMessage; @@ -76,6 +77,17 @@ public class BuyerAsOffererProtocol { // Public methods /////////////////////////////////////////////////////////////////////////////////////////// + public void setMailboxMessage(MailboxMessage mailboxMessage) { + log.debug("setMailboxMessage " + mailboxMessage); + // Might be called twice, so check that its only processed once + if (model.mailboxMessage == null) { + model.mailboxMessage = mailboxMessage; + if (mailboxMessage instanceof PayoutTxPublishedMessage) { + handlePayoutTxPublishedMessage((PayoutTxPublishedMessage) mailboxMessage); + } + } + } + public void cleanup() { log.debug("cleanup " + this); @@ -99,7 +111,7 @@ public class BuyerAsOffererProtocol { model.setTradeMessage(tradeMessage); model.taker.peer = taker; - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("sequence at handleTakeOfferFeePayedMessage completed"); }, @@ -110,7 +122,7 @@ public class BuyerAsOffererProtocol { taskRunner.addTasks( ProcessRequestDepositTxInputsMessage.class, CreateOffererDepositTxInputs.class, - RequestDepositPayment.class + RequestTakerDepositPayment.class ); taskRunner.run(); } @@ -118,7 +130,7 @@ public class BuyerAsOffererProtocol { private void handleRequestOffererPublishDepositTxMessage(RequestOffererPublishDepositTxMessage tradeMessage) { model.setTradeMessage(tradeMessage); - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("taskRunner at handleRequestOffererPublishDepositTxMessage completed"); transactionConfidenceListener = (tx, reason) -> { @@ -142,7 +154,7 @@ public class BuyerAsOffererProtocol { VerifyAndSignContract.class, SignAndPublishDepositTx.class, SetupListenerForBlockChainConfirmation.class, - SendDepositTxIdToTaker.class + SendDepositTxToTaker.class ); taskRunner.run(); } @@ -154,7 +166,7 @@ public class BuyerAsOffererProtocol { // User clicked the "bank transfer started" button public void onFiatPaymentStarted() { - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("sequence at handleBankTransferStartedUIEvent completed"); }, @@ -178,7 +190,7 @@ public class BuyerAsOffererProtocol { private void handlePayoutTxPublishedMessage(PayoutTxPublishedMessage tradeMessage) { model.setTradeMessage(tradeMessage); - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("sequence at handlePayoutTxPublishedMessage completed"); diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/OffererModel.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/Offerer.java similarity index 97% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/OffererModel.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/Offerer.java index 11c14ed532..59d99fc4ad 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/OffererModel.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/Offerer.java @@ -30,7 +30,7 @@ import java.security.PublicKey; import java.util.List; -public class OffererModel implements Serializable { +public class Offerer implements Serializable { private static final long serialVersionUID = -1845177552607819927L; // Those fields are set at constructor but not declared as final because constructor is not called in case model gets created from a persisted model diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/BuyerAsOffererModel.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/OffererAsBuyerModel.java similarity index 88% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/BuyerAsOffererModel.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/OffererAsBuyerModel.java index 535cf892cc..c8937c0fa6 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/BuyerAsOffererModel.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/OffererAsBuyerModel.java @@ -32,18 +32,18 @@ import java.io.Serializable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class BuyerAsOffererModel extends SharedTradeModel implements Serializable { +public class OffererAsBuyerModel extends SharedTradeModel implements Serializable { private static final long serialVersionUID = 5000457153390911569L; - private static final Logger log = LoggerFactory.getLogger(BuyerAsOffererModel.class); + private static final Logger log = LoggerFactory.getLogger(OffererAsBuyerModel.class); transient public final Trade trade; - public final TakerModel taker; - public final OffererModel offerer; + public final Taker taker; + public final Offerer offerer; // written by tasks private String takeOfferFeeTxId; - public BuyerAsOffererModel(Trade trade, + public OffererAsBuyerModel(Trade trade, MessageService messageService, MailboxService mailboxService, WalletService walletService, @@ -62,8 +62,8 @@ public class BuyerAsOffererModel extends SharedTradeModel implements Serializabl this.trade = trade; Serializable serializable = persistence.read(this, "BuyerAsOffererModel_" + id); - if (serializable instanceof BuyerAsOffererModel) { - BuyerAsOffererModel persistedModel = (BuyerAsOffererModel) serializable; + if (serializable instanceof OffererAsBuyerModel) { + OffererAsBuyerModel persistedModel = (OffererAsBuyerModel) serializable; log.debug("Model reconstructed form persisted model."); setTakeOfferFeeTxId(persistedModel.takeOfferFeeTxId); @@ -72,8 +72,8 @@ public class BuyerAsOffererModel extends SharedTradeModel implements Serializabl offerer = persistedModel.offerer; } else { - taker = new TakerModel(); - offerer = new OffererModel(); + taker = new Taker(); + offerer = new Offerer(); } offerer.registrationPubKey = walletService.getRegistrationAddressEntry().getPubKey(); diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/TakerModel.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/Taker.java similarity index 96% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/TakerModel.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/Taker.java index 7aea093dcb..19039f1b93 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/TakerModel.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/models/Taker.java @@ -30,7 +30,7 @@ import java.security.PublicKey; import java.util.List; -public class TakerModel implements Serializable { +public class Taker implements Serializable { private static final long serialVersionUID = 2660909397210346486L; // written by tasks diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateAndSignPayoutTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateAndSignPayoutTx.java index 5f91c54eb8..7ea3870e16 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateAndSignPayoutTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateAndSignPayoutTx.java @@ -20,17 +20,17 @@ package io.bitsquare.trade.protocol.trade.offerer.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.bitcoinj.core.Coin; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class CreateAndSignPayoutTx extends Task { +public class CreateAndSignPayoutTx extends Task { private static final Logger log = LoggerFactory.getLogger(CreateAndSignPayoutTx.class); - public CreateAndSignPayoutTx(TaskRunner taskHandler, BuyerAsOffererModel model) { + public CreateAndSignPayoutTx(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateOffererDepositTxInputs.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateOffererDepositTxInputs.java index 5df3aff6e8..8da26110db 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateOffererDepositTxInputs.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/CreateOffererDepositTxInputs.java @@ -21,17 +21,17 @@ import io.bitsquare.btc.FeePolicy; import io.bitsquare.btc.TradeWalletService; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.bitcoinj.core.Coin; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class CreateOffererDepositTxInputs extends Task { +public class CreateOffererDepositTxInputs extends Task { private static final Logger log = LoggerFactory.getLogger(CreateOffererDepositTxInputs.class); - public CreateOffererDepositTxInputs(TaskRunner taskHandler, BuyerAsOffererModel model) { + public CreateOffererDepositTxInputs(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessPayoutTxPublishedMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessPayoutTxPublishedMessage.java index 5eba262405..7a0823c161 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessPayoutTxPublishedMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessPayoutTxPublishedMessage.java @@ -21,7 +21,7 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; import io.bitsquare.trade.protocol.trade.messages.PayoutTxPublishedMessage; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,10 +29,10 @@ import org.slf4j.LoggerFactory; import static com.google.common.base.Preconditions.checkNotNull; import static io.bitsquare.util.Validator.checkTradeId; -public class ProcessPayoutTxPublishedMessage extends Task { +public class ProcessPayoutTxPublishedMessage extends Task { private static final Logger log = LoggerFactory.getLogger(ProcessPayoutTxPublishedMessage.class); - public ProcessPayoutTxPublishedMessage(TaskRunner taskHandler, BuyerAsOffererModel model) { + public ProcessPayoutTxPublishedMessage(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestDepositTxInputsMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestDepositTxInputsMessage.java index 5886911d48..e09e7c63ca 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestDepositTxInputsMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestDepositTxInputsMessage.java @@ -21,7 +21,7 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; import io.bitsquare.trade.protocol.trade.messages.RequestDepositTxInputsMessage; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,10 +29,10 @@ import org.slf4j.LoggerFactory; import static com.google.common.base.Preconditions.checkNotNull; import static io.bitsquare.util.Validator.*; -public class ProcessRequestDepositTxInputsMessage extends Task { +public class ProcessRequestDepositTxInputsMessage extends Task { private static final Logger log = LoggerFactory.getLogger(ProcessRequestDepositTxInputsMessage.class); - public ProcessRequestDepositTxInputsMessage(TaskRunner taskHandler, BuyerAsOffererModel model) { + public ProcessRequestDepositTxInputsMessage(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestOffererPublishDepositTxMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestOffererPublishDepositTxMessage.java index e8de854d1f..f9b1794e6e 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestOffererPublishDepositTxMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/ProcessRequestOffererPublishDepositTxMessage.java @@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.offerer.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.protocol.trade.messages.RequestOffererPublishDepositTxMessage; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,10 +28,10 @@ import org.slf4j.LoggerFactory; import static com.google.common.base.Preconditions.*; import static io.bitsquare.util.Validator.*; -public class ProcessRequestOffererPublishDepositTxMessage extends Task { +public class ProcessRequestOffererPublishDepositTxMessage extends Task { private static final Logger log = LoggerFactory.getLogger(ProcessRequestOffererPublishDepositTxMessage.class); - public ProcessRequestOffererPublishDepositTxMessage(TaskRunner taskHandler, BuyerAsOffererModel model) { + public ProcessRequestOffererPublishDepositTxMessage(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/RequestDepositPayment.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/RequestTakerDepositPayment.java similarity index 79% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/RequestDepositPayment.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/RequestTakerDepositPayment.java index a434e14612..b548f670d3 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/RequestDepositPayment.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/RequestTakerDepositPayment.java @@ -20,22 +20,22 @@ package io.bitsquare.trade.protocol.trade.offerer.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.p2p.listener.SendMessageListener; -import io.bitsquare.trade.protocol.trade.messages.RequestDepositPaymentMessage; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.messages.RequestTakerDepositPaymentMessage; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class RequestDepositPayment extends Task { - private static final Logger log = LoggerFactory.getLogger(RequestDepositPayment.class); +public class RequestTakerDepositPayment extends Task { + private static final Logger log = LoggerFactory.getLogger(RequestTakerDepositPayment.class); - public RequestDepositPayment(TaskRunner taskHandler, BuyerAsOffererModel model) { + public RequestTakerDepositPayment(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } @Override protected void doRun() { - RequestDepositPaymentMessage tradeMessage = new RequestDepositPaymentMessage( + RequestTakerDepositPaymentMessage tradeMessage = new RequestTakerDepositPaymentMessage( model.id, model.offerer.connectedOutputsForAllInputs, model.offerer.outputs, diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendBankTransferStartedMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendBankTransferStartedMessage.java index 013d7cf227..4aa1d8f42b 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendBankTransferStartedMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendBankTransferStartedMessage.java @@ -22,15 +22,15 @@ import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.p2p.listener.SendMessageListener; import io.bitsquare.trade.Trade; import io.bitsquare.trade.protocol.trade.messages.FiatTransferStartedMessage; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SendBankTransferStartedMessage extends Task { +public class SendBankTransferStartedMessage extends Task { private static final Logger log = LoggerFactory.getLogger(SendBankTransferStartedMessage.class); - public SendBankTransferStartedMessage(TaskRunner taskHandler, BuyerAsOffererModel model) { + public SendBankTransferStartedMessage(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendDepositTxIdToTaker.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendDepositTxToTaker.java similarity index 86% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendDepositTxIdToTaker.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendDepositTxToTaker.java index d2a7a45bfe..91b611af3a 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendDepositTxIdToTaker.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SendDepositTxToTaker.java @@ -21,15 +21,15 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.p2p.listener.SendMessageListener; import io.bitsquare.trade.protocol.trade.messages.DepositTxPublishedMessage; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SendDepositTxIdToTaker extends Task { - private static final Logger log = LoggerFactory.getLogger(SendDepositTxIdToTaker.class); +public class SendDepositTxToTaker extends Task { + private static final Logger log = LoggerFactory.getLogger(SendDepositTxToTaker.class); - public SendDepositTxIdToTaker(TaskRunner taskHandler, BuyerAsOffererModel model) { + public SendDepositTxToTaker(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SetupListenerForBlockChainConfirmation.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SetupListenerForBlockChainConfirmation.java index e8a1c4bb8e..51f208ac6e 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SetupListenerForBlockChainConfirmation.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SetupListenerForBlockChainConfirmation.java @@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.offerer.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.bitcoinj.core.Transaction; import org.bitcoinj.core.TransactionConfidence; @@ -30,13 +30,13 @@ import javafx.application.Platform; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SetupListenerForBlockChainConfirmation extends Task { +public class SetupListenerForBlockChainConfirmation extends Task { private static final Logger log = LoggerFactory.getLogger(SetupListenerForBlockChainConfirmation.class); private TransactionConfidence.Listener transactionConfidenceListener; private TransactionConfidence transactionConfidence; - public SetupListenerForBlockChainConfirmation(TaskRunner taskHandler, BuyerAsOffererModel model) { + public SetupListenerForBlockChainConfirmation(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SignAndPublishDepositTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SignAndPublishDepositTx.java index 0202a29db1..cefa5eaa8b 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SignAndPublishDepositTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/SignAndPublishDepositTx.java @@ -21,7 +21,7 @@ import io.bitsquare.btc.FeePolicy; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.bitcoinj.core.Coin; import org.bitcoinj.core.Transaction; @@ -33,10 +33,10 @@ import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SignAndPublishDepositTx extends Task { +public class SignAndPublishDepositTx extends Task { private static final Logger log = LoggerFactory.getLogger(SignAndPublishDepositTx.class); - public SignAndPublishDepositTx(TaskRunner taskHandler, BuyerAsOffererModel model) { + public SignAndPublishDepositTx(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyAndSignContract.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyAndSignContract.java index b65e807cb2..38f19f8ae9 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyAndSignContract.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyAndSignContract.java @@ -21,16 +21,16 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Contract; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import io.bitsquare.util.Utilities; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class VerifyAndSignContract extends Task { +public class VerifyAndSignContract extends Task { private static final Logger log = LoggerFactory.getLogger(VerifyAndSignContract.class); - public VerifyAndSignContract(TaskRunner taskHandler, BuyerAsOffererModel model) { + public VerifyAndSignContract(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakeOfferFeePayment.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakeOfferFeePayment.java index 1336df315c..30d2d50b72 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakeOfferFeePayment.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakeOfferFeePayment.java @@ -19,15 +19,15 @@ package io.bitsquare.trade.protocol.trade.offerer.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class VerifyTakeOfferFeePayment extends Task { +public class VerifyTakeOfferFeePayment extends Task { private static final Logger log = LoggerFactory.getLogger(VerifyTakeOfferFeePayment.class); - public VerifyTakeOfferFeePayment(TaskRunner taskHandler, BuyerAsOffererModel model) { + public VerifyTakeOfferFeePayment(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakerAccount.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakerAccount.java index fed00dc18d..02cc20e7fe 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakerAccount.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/offerer/tasks/VerifyTakerAccount.java @@ -19,15 +19,15 @@ package io.bitsquare.trade.protocol.trade.offerer.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; -import io.bitsquare.trade.protocol.trade.offerer.models.BuyerAsOffererModel; +import io.bitsquare.trade.protocol.trade.offerer.models.OffererAsBuyerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class VerifyTakerAccount extends Task { +public class VerifyTakerAccount extends Task { private static final Logger log = LoggerFactory.getLogger(VerifyTakerAccount.class); - public VerifyTakerAccount(TaskRunner taskHandler, BuyerAsOffererModel model) { + public VerifyTakerAccount(TaskRunner taskHandler, OffererAsBuyerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/SellerAsTakerProtocol.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/TakerAsSellerProtocol.java similarity index 87% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/taker/SellerAsTakerProtocol.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/taker/TakerAsSellerProtocol.java index ef02fa9fb1..1a9ee13363 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/SellerAsTakerProtocol.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/TakerAsSellerProtocol.java @@ -22,18 +22,17 @@ import io.bitsquare.p2p.MailboxMessage; import io.bitsquare.p2p.Message; import io.bitsquare.p2p.MessageHandler; import io.bitsquare.p2p.Peer; -import io.bitsquare.trade.Trade; import io.bitsquare.trade.protocol.trade.messages.DepositTxPublishedMessage; import io.bitsquare.trade.protocol.trade.messages.FiatTransferStartedMessage; -import io.bitsquare.trade.protocol.trade.messages.RequestDepositPaymentMessage; +import io.bitsquare.trade.protocol.trade.messages.RequestTakerDepositPaymentMessage; import io.bitsquare.trade.protocol.trade.messages.TradeMessage; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import io.bitsquare.trade.protocol.trade.taker.tasks.BroadcastTakeOfferFeeTx; import io.bitsquare.trade.protocol.trade.taker.tasks.CreateAndSignContract; import io.bitsquare.trade.protocol.trade.taker.tasks.CreateTakeOfferFeeTx; import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessDepositTxPublishedMessage; import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessFiatTransferStartedMessage; -import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessRequestDepositPaymentMessage; +import io.bitsquare.trade.protocol.trade.taker.tasks.ProcessRequestTakerDepositPaymentMessage; import io.bitsquare.trade.protocol.trade.taker.tasks.SendPayoutTxToOfferer; import io.bitsquare.trade.protocol.trade.taker.tasks.SendRequestDepositTxInputsMessage; import io.bitsquare.trade.protocol.trade.taker.tasks.SendSignedTakerDepositTx; @@ -53,11 +52,11 @@ import org.slf4j.LoggerFactory; import static io.bitsquare.util.Validator.nonEmptyStringOf; -public class SellerAsTakerProtocol { - private static final Logger log = LoggerFactory.getLogger(SellerAsTakerProtocol.class); +public class TakerAsSellerProtocol { + private static final Logger log = LoggerFactory.getLogger(TakerAsSellerProtocol.class); private static final int TIMEOUT_DELAY = 10000; - private final SellerAsTakerModel model; + private final TakerAsSellerModel model; private final MessageHandler messageHandler; private AnimationTimer timeoutTimer; @@ -66,7 +65,7 @@ public class SellerAsTakerProtocol { // Constructor /////////////////////////////////////////////////////////////////////////////////////////// - public SellerAsTakerProtocol(SellerAsTakerModel model) { + public TakerAsSellerProtocol(TakerAsSellerModel model) { log.debug("New SellerAsTakerProtocol " + this); this.model = model; messageHandler = this::handleMessage; @@ -93,11 +92,14 @@ public class SellerAsTakerProtocol { if (mailboxMessage instanceof FiatTransferStartedMessage) { handleFiatTransferStartedMessage((FiatTransferStartedMessage) mailboxMessage); } + else if (mailboxMessage instanceof DepositTxPublishedMessage) { + handleDepositTxPublishedMessage((DepositTxPublishedMessage) mailboxMessage); + } } } public void takeAvailableOffer() { - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("taskRunner at takeAvailableOffer completed"); }, @@ -118,10 +120,10 @@ public class SellerAsTakerProtocol { // Incoming message handling /////////////////////////////////////////////////////////////////////////////////////////// - private void handleRequestDepositPaymentMessage(RequestDepositPaymentMessage tradeMessage) { + private void handleRequestTakerDepositPaymentMessage(RequestTakerDepositPaymentMessage tradeMessage) { model.setTradeMessage(tradeMessage); - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("taskRunner at handleTakerDepositPaymentRequestMessage completed"); }, @@ -130,7 +132,7 @@ public class SellerAsTakerProtocol { } ); taskRunner.addTasks( - ProcessRequestDepositPaymentMessage.class, + ProcessRequestTakerDepositPaymentMessage.class, VerifyOffererAccount.class, CreateAndSignContract.class, TakerCreatesAndSignsDepositTx.class, @@ -142,7 +144,7 @@ public class SellerAsTakerProtocol { private void handleDepositTxPublishedMessage(DepositTxPublishedMessage tradeMessage) { model.setTradeMessage(tradeMessage); - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("taskRunner at handleDepositTxPublishedMessage completed"); }, @@ -160,10 +162,9 @@ public class SellerAsTakerProtocol { private void handleFiatTransferStartedMessage(FiatTransferStartedMessage tradeMessage) { model.setTradeMessage(tradeMessage); - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("taskRunner at handleFiatTransferStartedMessage completed"); - model.trade.setState(Trade.State.FIAT_PAYMENT_STARTED); }, (errorMessage) -> { log.error(errorMessage); @@ -173,13 +174,14 @@ public class SellerAsTakerProtocol { taskRunner.run(); } + /////////////////////////////////////////////////////////////////////////////////////////// // Called from UI /////////////////////////////////////////////////////////////////////////////////////////// // User clicked the "bank transfer received" button, so we release the funds for pay out public void onFiatPaymentReceived() { - TaskRunner taskRunner = new TaskRunner<>(model, + TaskRunner taskRunner = new TaskRunner<>(model, () -> { log.debug("taskRunner at handleFiatReceivedUIEvent completed"); @@ -209,8 +211,8 @@ public class SellerAsTakerProtocol { nonEmptyStringOf(tradeMessage.tradeId); if (tradeMessage.tradeId.equals(model.id)) { - if (tradeMessage instanceof RequestDepositPaymentMessage) { - handleRequestDepositPaymentMessage((RequestDepositPaymentMessage) tradeMessage); + if (tradeMessage instanceof RequestTakerDepositPaymentMessage) { + handleRequestTakerDepositPaymentMessage((RequestTakerDepositPaymentMessage) tradeMessage); } else if (tradeMessage instanceof DepositTxPublishedMessage) { handleDepositTxPublishedMessage((DepositTxPublishedMessage) tradeMessage); diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/OffererModel.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/Offerer.java similarity index 96% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/OffererModel.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/Offerer.java index 8316066098..89e62d8dfd 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/OffererModel.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/Offerer.java @@ -27,7 +27,7 @@ import java.io.Serializable; import java.util.List; -public class OffererModel implements Serializable { +public class Offerer implements Serializable { private static final long serialVersionUID = 1582902150121576205L; // Those fields are set at constructor but not declared as final because constructor is not called in case model gets created from a persisted model diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/TakerModel.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/Taker.java similarity index 97% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/TakerModel.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/Taker.java index b62becfc69..6d142a30e7 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/TakerModel.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/Taker.java @@ -31,7 +31,7 @@ import java.security.PublicKey; import java.util.List; -public class TakerModel implements Serializable { +public class Taker implements Serializable { private static long serialVersionUID = -4041809885931756860L; // Those fields are set at constructor but not declared as final because constructor is not called in case model gets created from a persisted model diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/SellerAsTakerModel.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/TakerAsSellerModel.java similarity index 89% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/SellerAsTakerModel.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/TakerAsSellerModel.java index a7b56b5514..4632e47f8a 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/SellerAsTakerModel.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/models/TakerAsSellerModel.java @@ -35,19 +35,19 @@ import java.io.Serializable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SellerAsTakerModel extends SharedTradeModel implements Serializable { +public class TakerAsSellerModel extends SharedTradeModel implements Serializable { private static final long serialVersionUID = -963501132927618376L; - private static final Logger log = LoggerFactory.getLogger(SellerAsTakerModel.class); + private static final Logger log = LoggerFactory.getLogger(TakerAsSellerModel.class); public final Trade trade; - public final TakerModel taker; - public final OffererModel offerer; + public final Taker taker; + public final Offerer offerer; // written by tasks private Transaction takeOfferFeeTx; private Transaction payoutTx; - public SellerAsTakerModel(Trade trade, + public TakerAsSellerModel(Trade trade, Peer offererPeer, MessageService messageService, MailboxService mailboxService, @@ -67,8 +67,8 @@ public class SellerAsTakerModel extends SharedTradeModel implements Serializable this.trade = trade; Serializable serializable = persistence.read(this, "SellerAsTakerModel_" + id); - if (serializable instanceof SellerAsTakerModel) { - SellerAsTakerModel persistedModel = (SellerAsTakerModel) serializable; + if (serializable instanceof TakerAsSellerModel) { + TakerAsSellerModel persistedModel = (TakerAsSellerModel) serializable; log.debug("Model reconstructed form persisted model."); setTakeOfferFeeTx(persistedModel.getTakeOfferFeeTx()); @@ -78,8 +78,8 @@ public class SellerAsTakerModel extends SharedTradeModel implements Serializable offerer = persistedModel.offerer; } else { - taker = new TakerModel(); - offerer = new OffererModel(); + taker = new Taker(); + offerer = new Offerer(); } offerer.peer = offererPeer; diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/BroadcastTakeOfferFeeTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/BroadcastTakeOfferFeeTx.java index 397c1cfffd..dd44a99221 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/BroadcastTakeOfferFeeTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/BroadcastTakeOfferFeeTx.java @@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.bitcoinj.core.Transaction; @@ -31,10 +31,10 @@ import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class BroadcastTakeOfferFeeTx extends Task { +public class BroadcastTakeOfferFeeTx extends Task { private static final Logger log = LoggerFactory.getLogger(BroadcastTakeOfferFeeTx.class); - public BroadcastTakeOfferFeeTx(TaskRunner taskHandler, SellerAsTakerModel model) { + public BroadcastTakeOfferFeeTx(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateAndSignContract.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateAndSignContract.java index df60eb618a..85ef55b95f 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateAndSignContract.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateAndSignContract.java @@ -21,16 +21,16 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Contract; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import io.bitsquare.util.Utilities; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class CreateAndSignContract extends Task { +public class CreateAndSignContract extends Task { private static final Logger log = LoggerFactory.getLogger(CreateAndSignContract.class); - public CreateAndSignContract(TaskRunner taskHandler, SellerAsTakerModel model) { + public CreateAndSignContract(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateTakeOfferFeeTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateTakeOfferFeeTx.java index 9ebe6e6f8d..e251775677 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateTakeOfferFeeTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/CreateTakeOfferFeeTx.java @@ -20,17 +20,17 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.bitcoinj.core.Transaction; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class CreateTakeOfferFeeTx extends Task { +public class CreateTakeOfferFeeTx extends Task { private static final Logger log = LoggerFactory.getLogger(CreateTakeOfferFeeTx.class); - public CreateTakeOfferFeeTx(TaskRunner taskHandler, SellerAsTakerModel model) { + public CreateTakeOfferFeeTx(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessDepositTxPublishedMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessDepositTxPublishedMessage.java index c662acf22b..62b6b508dd 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessDepositTxPublishedMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessDepositTxPublishedMessage.java @@ -21,7 +21,7 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; import io.bitsquare.trade.protocol.trade.messages.DepositTxPublishedMessage; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -29,10 +29,10 @@ import org.slf4j.LoggerFactory; import static com.google.common.base.Preconditions.checkNotNull; import static io.bitsquare.util.Validator.checkTradeId; -public class ProcessDepositTxPublishedMessage extends Task { +public class ProcessDepositTxPublishedMessage extends Task { private static final Logger log = LoggerFactory.getLogger(ProcessDepositTxPublishedMessage.class); - public ProcessDepositTxPublishedMessage(TaskRunner taskHandler, SellerAsTakerModel model) { + public ProcessDepositTxPublishedMessage(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessFiatTransferStartedMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessFiatTransferStartedMessage.java index 71aba83dcf..dc50d23abf 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessFiatTransferStartedMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessFiatTransferStartedMessage.java @@ -19,8 +19,9 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; +import io.bitsquare.trade.Trade; import io.bitsquare.trade.protocol.trade.messages.FiatTransferStartedMessage; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,10 +29,10 @@ import org.slf4j.LoggerFactory; import static com.google.common.base.Preconditions.checkNotNull; import static io.bitsquare.util.Validator.*; -public class ProcessFiatTransferStartedMessage extends Task { +public class ProcessFiatTransferStartedMessage extends Task { private static final Logger log = LoggerFactory.getLogger(ProcessFiatTransferStartedMessage.class); - public ProcessFiatTransferStartedMessage(TaskRunner taskHandler, SellerAsTakerModel model) { + public ProcessFiatTransferStartedMessage(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } @@ -45,9 +46,11 @@ public class ProcessFiatTransferStartedMessage extends Task model.offerer.payoutAmount = positiveCoinOf(nonZeroCoinOf(message.offererPayoutAmount)); model.taker.payoutAmount = positiveCoinOf(nonZeroCoinOf(message.takerPayoutAmount)); model.offerer.payoutAddressString = nonEmptyStringOf(message.offererPayoutAddress); + model.trade.setState(Trade.State.FIAT_PAYMENT_STARTED); complete(); } catch (Throwable t) { + model.trade.setState(Trade.State.FAULT); failed(t); } } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessRequestDepositPaymentMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessRequestTakerDepositPaymentMessage.java similarity index 78% rename from core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessRequestDepositPaymentMessage.java rename to core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessRequestTakerDepositPaymentMessage.java index 607a92afb9..0a2b26ba5f 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessRequestDepositPaymentMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/ProcessRequestTakerDepositPaymentMessage.java @@ -19,8 +19,8 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; -import io.bitsquare.trade.protocol.trade.messages.RequestDepositPaymentMessage; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.messages.RequestTakerDepositPaymentMessage; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,10 +28,10 @@ import org.slf4j.LoggerFactory; import static com.google.common.base.Preconditions.*; import static io.bitsquare.util.Validator.*; -public class ProcessRequestDepositPaymentMessage extends Task { - private static final Logger log = LoggerFactory.getLogger(ProcessRequestDepositPaymentMessage.class); +public class ProcessRequestTakerDepositPaymentMessage extends Task { + private static final Logger log = LoggerFactory.getLogger(ProcessRequestTakerDepositPaymentMessage.class); - public ProcessRequestDepositPaymentMessage(TaskRunner taskHandler, SellerAsTakerModel model) { + public ProcessRequestTakerDepositPaymentMessage(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } @@ -39,7 +39,7 @@ public class ProcessRequestDepositPaymentMessage extends Task 0); diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendPayoutTxToOfferer.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendPayoutTxToOfferer.java index 6815dce768..9158207fa0 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendPayoutTxToOfferer.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendPayoutTxToOfferer.java @@ -21,15 +21,15 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.p2p.listener.SendMessageListener; import io.bitsquare.trade.protocol.trade.messages.PayoutTxPublishedMessage; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SendPayoutTxToOfferer extends Task { +public class SendPayoutTxToOfferer extends Task { private static final Logger log = LoggerFactory.getLogger(SendPayoutTxToOfferer.class); - public SendPayoutTxToOfferer(TaskRunner taskHandler, SellerAsTakerModel model) { + public SendPayoutTxToOfferer(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendRequestDepositTxInputsMessage.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendRequestDepositTxInputsMessage.java index bb1430385c..ec893f4307 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendRequestDepositTxInputsMessage.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendRequestDepositTxInputsMessage.java @@ -22,17 +22,17 @@ import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.p2p.listener.SendMessageListener; import io.bitsquare.trade.Trade; import io.bitsquare.trade.protocol.trade.messages.RequestDepositTxInputsMessage; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import javafx.application.Platform; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SendRequestDepositTxInputsMessage extends Task { +public class SendRequestDepositTxInputsMessage extends Task { private static final Logger log = LoggerFactory.getLogger(SendRequestDepositTxInputsMessage.class); - public SendRequestDepositTxInputsMessage(TaskRunner taskHandler, SellerAsTakerModel model) { + public SendRequestDepositTxInputsMessage(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendSignedTakerDepositTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendSignedTakerDepositTx.java index 087d3457c5..010b256721 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendSignedTakerDepositTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SendSignedTakerDepositTx.java @@ -21,15 +21,15 @@ import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.p2p.listener.SendMessageListener; import io.bitsquare.trade.protocol.trade.messages.RequestOffererPublishDepositTxMessage; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SendSignedTakerDepositTx extends Task { +public class SendSignedTakerDepositTx extends Task { private static final Logger log = LoggerFactory.getLogger(SendSignedTakerDepositTx.class); - public SendSignedTakerDepositTx(TaskRunner taskHandler, SellerAsTakerModel model) { + public SendSignedTakerDepositTx(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SignAndPublishPayoutTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SignAndPublishPayoutTx.java index ee0b5a0513..8be264e666 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SignAndPublishPayoutTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/SignAndPublishPayoutTx.java @@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.bitcoinj.core.Transaction; @@ -31,10 +31,10 @@ import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class SignAndPublishPayoutTx extends Task { +public class SignAndPublishPayoutTx extends Task { private static final Logger log = LoggerFactory.getLogger(SignAndPublishPayoutTx.class); - public SignAndPublishPayoutTx(TaskRunner taskHandler, SellerAsTakerModel model) { + public SignAndPublishPayoutTx(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCommitDepositTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCommitDepositTx.java index 1db9ebe08c..a626b11605 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCommitDepositTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCommitDepositTx.java @@ -19,15 +19,15 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class TakerCommitDepositTx extends Task { +public class TakerCommitDepositTx extends Task { private static final Logger log = LoggerFactory.getLogger(TakerCommitDepositTx.class); - public TakerCommitDepositTx(TaskRunner taskHandler, SellerAsTakerModel model) { + public TakerCommitDepositTx(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCreatesAndSignsDepositTx.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCreatesAndSignsDepositTx.java index 34f71bfa12..b6dcdaadc2 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCreatesAndSignsDepositTx.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/TakerCreatesAndSignsDepositTx.java @@ -22,17 +22,17 @@ import io.bitsquare.btc.TradeWalletService; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; import io.bitsquare.trade.Trade; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.bitcoinj.core.Coin; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class TakerCreatesAndSignsDepositTx extends Task { +public class TakerCreatesAndSignsDepositTx extends Task { private static final Logger log = LoggerFactory.getLogger(TakerCreatesAndSignsDepositTx.class); - public TakerCreatesAndSignsDepositTx(TaskRunner taskHandler, SellerAsTakerModel model) { + public TakerCreatesAndSignsDepositTx(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOfferFeePayment.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOfferFeePayment.java index 3740209657..cb5b9b60de 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOfferFeePayment.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOfferFeePayment.java @@ -19,15 +19,15 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class VerifyOfferFeePayment extends Task { +public class VerifyOfferFeePayment extends Task { private static final Logger log = LoggerFactory.getLogger(VerifyOfferFeePayment.class); - public VerifyOfferFeePayment(TaskRunner taskHandler, SellerAsTakerModel model) { + public VerifyOfferFeePayment(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); } diff --git a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOffererAccount.java b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOffererAccount.java index 91c084a528..72fa80f4fd 100644 --- a/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOffererAccount.java +++ b/core/src/main/java/io/bitsquare/trade/protocol/trade/taker/tasks/VerifyOffererAccount.java @@ -19,15 +19,15 @@ package io.bitsquare.trade.protocol.trade.taker.tasks; import io.bitsquare.common.taskrunner.Task; import io.bitsquare.common.taskrunner.TaskRunner; -import io.bitsquare.trade.protocol.trade.taker.models.SellerAsTakerModel; +import io.bitsquare.trade.protocol.trade.taker.models.TakerAsSellerModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class VerifyOffererAccount extends Task { +public class VerifyOffererAccount extends Task { private static final Logger log = LoggerFactory.getLogger(VerifyOffererAccount.class); - public VerifyOffererAccount(TaskRunner taskHandler, SellerAsTakerModel model) { + public VerifyOffererAccount(TaskRunner taskHandler, TakerAsSellerModel model) { super(taskHandler, model); }