mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-07-28 01:15:26 -04:00
Rename Address to NodeAddress
This commit is contained in:
parent
cb685d3b5c
commit
c180491430
112 changed files with 866 additions and 866 deletions
|
@ -19,7 +19,7 @@ package io.bitsquare.arbitration;
|
|||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.common.crypto.PubKeyRing;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.storage.data.PubKeyProtectedExpirablePayload;
|
||||
|
||||
import java.security.PublicKey;
|
||||
|
@ -36,14 +36,14 @@ public final class Arbitrator implements PubKeyProtectedExpirablePayload {
|
|||
// Persisted fields
|
||||
private final byte[] btcPubKey;
|
||||
private final PubKeyRing pubKeyRing;
|
||||
private final Address arbitratorAddress;
|
||||
private final NodeAddress arbitratorNodeAddress;
|
||||
private final List<String> languageCodes;
|
||||
private final String btcAddress;
|
||||
private final long registrationDate;
|
||||
private final String registrationSignature;
|
||||
private final byte[] registrationPubKey;
|
||||
|
||||
public Arbitrator(Address arbitratorAddress,
|
||||
public Arbitrator(NodeAddress arbitratorNodeAddress,
|
||||
byte[] btcPubKey,
|
||||
String btcAddress,
|
||||
PubKeyRing pubKeyRing,
|
||||
|
@ -51,7 +51,7 @@ public final class Arbitrator implements PubKeyProtectedExpirablePayload {
|
|||
Date registrationDate,
|
||||
byte[] registrationPubKey,
|
||||
String registrationSignature) {
|
||||
this.arbitratorAddress = arbitratorAddress;
|
||||
this.arbitratorNodeAddress = arbitratorNodeAddress;
|
||||
this.btcPubKey = btcPubKey;
|
||||
this.btcAddress = btcAddress;
|
||||
this.pubKeyRing = pubKeyRing;
|
||||
|
@ -84,8 +84,8 @@ public final class Arbitrator implements PubKeyProtectedExpirablePayload {
|
|||
return pubKeyRing;
|
||||
}
|
||||
|
||||
public Address getArbitratorAddress() {
|
||||
return arbitratorAddress;
|
||||
public NodeAddress getArbitratorNodeAddress() {
|
||||
return arbitratorNodeAddress;
|
||||
}
|
||||
|
||||
public Date getRegistrationDate() {
|
||||
|
@ -118,7 +118,7 @@ public final class Arbitrator implements PubKeyProtectedExpirablePayload {
|
|||
if (registrationDate != that.registrationDate) return false;
|
||||
if (!Arrays.equals(btcPubKey, that.btcPubKey)) return false;
|
||||
if (pubKeyRing != null ? !pubKeyRing.equals(that.pubKeyRing) : that.pubKeyRing != null) return false;
|
||||
if (arbitratorAddress != null ? !arbitratorAddress.equals(that.arbitratorAddress) : that.arbitratorAddress != null)
|
||||
if (arbitratorNodeAddress != null ? !arbitratorNodeAddress.equals(that.arbitratorNodeAddress) : that.arbitratorNodeAddress != null)
|
||||
return false;
|
||||
if (languageCodes != null ? !languageCodes.equals(that.languageCodes) : that.languageCodes != null)
|
||||
return false;
|
||||
|
@ -133,7 +133,7 @@ public final class Arbitrator implements PubKeyProtectedExpirablePayload {
|
|||
public int hashCode() {
|
||||
int result = btcPubKey != null ? Arrays.hashCode(btcPubKey) : 0;
|
||||
result = 31 * result + (pubKeyRing != null ? pubKeyRing.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorAddress != null ? arbitratorAddress.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorNodeAddress != null ? arbitratorNodeAddress.hashCode() : 0);
|
||||
result = 31 * result + (languageCodes != null ? languageCodes.hashCode() : 0);
|
||||
result = 31 * result + (btcAddress != null ? btcAddress.hashCode() : 0);
|
||||
result = 31 * result + (int) (registrationDate ^ (registrationDate >>> 32));
|
||||
|
@ -145,7 +145,7 @@ public final class Arbitrator implements PubKeyProtectedExpirablePayload {
|
|||
@Override
|
||||
public String toString() {
|
||||
return "Arbitrator{" +
|
||||
"arbitratorAddress=" + arbitratorAddress +
|
||||
"arbitratorAddress=" + arbitratorNodeAddress +
|
||||
", languageCodes=" + languageCodes +
|
||||
", btcAddress='" + btcAddress + '\'' +
|
||||
", registrationDate=" + registrationDate +
|
||||
|
|
|
@ -26,8 +26,8 @@ import io.bitsquare.common.crypto.KeyRing;
|
|||
import io.bitsquare.common.handlers.ErrorMessageHandler;
|
||||
import io.bitsquare.common.handlers.ResultHandler;
|
||||
import io.bitsquare.common.util.Utilities;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.FirstPeerAuthenticatedListener;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.p2p.storage.HashMapChangedListener;
|
||||
import io.bitsquare.p2p.storage.data.ProtectedData;
|
||||
|
@ -60,7 +60,7 @@ public class ArbitratorManager {
|
|||
private final KeyRing keyRing;
|
||||
private final ArbitratorService arbitratorService;
|
||||
private final User user;
|
||||
private final ObservableMap<Address, Arbitrator> arbitratorsObservableMap = FXCollections.observableHashMap();
|
||||
private final ObservableMap<NodeAddress, Arbitrator> arbitratorsObservableMap = FXCollections.observableHashMap();
|
||||
|
||||
// Keys for invited arbitrators in bootstrapping phase (before registration is open to anyone and security payment is implemented)
|
||||
// For testing purpose here is a private key so anyone can setup an arbitrator for now.
|
||||
|
@ -157,13 +157,13 @@ public class ArbitratorManager {
|
|||
}
|
||||
|
||||
public void applyArbitrators() {
|
||||
Map<Address, Arbitrator> map = arbitratorService.getArbitrators();
|
||||
Map<NodeAddress, Arbitrator> map = arbitratorService.getArbitrators();
|
||||
log.trace("Arbitrators . size=" + (map.values() != null ? map.values().size() : "0"));
|
||||
arbitratorsObservableMap.clear();
|
||||
Map<Address, Arbitrator> filtered = map.values().stream()
|
||||
Map<NodeAddress, Arbitrator> filtered = map.values().stream()
|
||||
.filter(e -> isPublicKeyInList(Utils.HEX.encode(e.getRegistrationPubKey()))
|
||||
&& verifySignature(e.getPubKeyRing().getSignaturePubKey(), e.getRegistrationPubKey(), e.getRegistrationSignature()))
|
||||
.collect(Collectors.toMap(Arbitrator::getArbitratorAddress, Function.identity()));
|
||||
.collect(Collectors.toMap(Arbitrator::getArbitratorNodeAddress, Function.identity()));
|
||||
|
||||
arbitratorsObservableMap.putAll(filtered);
|
||||
// we need to remove accepted arbitrators which are not available anymore
|
||||
|
@ -184,7 +184,7 @@ public class ArbitratorManager {
|
|||
|
||||
public void addArbitrator(Arbitrator arbitrator, ResultHandler resultHandler, ErrorMessageHandler errorMessageHandler) {
|
||||
user.setRegisteredArbitrator(arbitrator);
|
||||
arbitratorsObservableMap.put(arbitrator.getArbitratorAddress(), arbitrator);
|
||||
arbitratorsObservableMap.put(arbitrator.getArbitratorNodeAddress(), arbitrator);
|
||||
arbitratorService.addArbitrator(arbitrator,
|
||||
() -> {
|
||||
log.debug("Arbitrator successfully saved in P2P network");
|
||||
|
@ -200,7 +200,7 @@ public class ArbitratorManager {
|
|||
Arbitrator registeredArbitrator = user.getRegisteredArbitrator();
|
||||
if (registeredArbitrator != null) {
|
||||
user.setRegisteredArbitrator(null);
|
||||
arbitratorsObservableMap.remove(registeredArbitrator.getArbitratorAddress());
|
||||
arbitratorsObservableMap.remove(registeredArbitrator.getArbitratorNodeAddress());
|
||||
arbitratorService.removeArbitrator(registeredArbitrator,
|
||||
() -> {
|
||||
log.debug("Arbitrator successfully removed from P2P network");
|
||||
|
@ -210,7 +210,7 @@ public class ArbitratorManager {
|
|||
}
|
||||
}
|
||||
|
||||
public ObservableMap<Address, Arbitrator> getArbitratorsObservableMap() {
|
||||
public ObservableMap<NodeAddress, Arbitrator> getArbitratorsObservableMap() {
|
||||
return arbitratorsObservableMap;
|
||||
}
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ package io.bitsquare.arbitration;
|
|||
|
||||
import io.bitsquare.common.handlers.ErrorMessageHandler;
|
||||
import io.bitsquare.common.handlers.ResultHandler;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.p2p.storage.HashMapChangedListener;
|
||||
import org.slf4j.Logger;
|
||||
|
@ -82,17 +82,17 @@ public class ArbitratorService {
|
|||
return p2PService;
|
||||
}
|
||||
|
||||
public Map<Address, Arbitrator> getArbitrators() {
|
||||
public Map<NodeAddress, Arbitrator> getArbitrators() {
|
||||
Set<Arbitrator> arbitratorSet = p2PService.getDataMap().values().stream()
|
||||
.filter(e -> e.expirablePayload instanceof Arbitrator)
|
||||
.map(e -> (Arbitrator) e.expirablePayload)
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
Map<Address, Arbitrator> map = new HashMap<>();
|
||||
Map<NodeAddress, Arbitrator> map = new HashMap<>();
|
||||
for (Arbitrator arbitrator : arbitratorSet) {
|
||||
Address arbitratorAddress = arbitrator.getArbitratorAddress();
|
||||
if (!map.containsKey(arbitratorAddress))
|
||||
map.put(arbitratorAddress, arbitrator);
|
||||
NodeAddress arbitratorNodeAddress = arbitrator.getArbitratorNodeAddress();
|
||||
if (!map.containsKey(arbitratorNodeAddress))
|
||||
map.put(arbitratorNodeAddress, arbitrator);
|
||||
else
|
||||
log.warn("arbitratorAddress already exist in arbitrator map. Seems an arbitrator object is already registered with the same address.");
|
||||
}
|
||||
|
|
|
@ -26,9 +26,9 @@ import io.bitsquare.btc.exceptions.TransactionVerificationException;
|
|||
import io.bitsquare.btc.exceptions.WalletException;
|
||||
import io.bitsquare.common.crypto.KeyRing;
|
||||
import io.bitsquare.common.crypto.PubKeyRing;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.FirstPeerAuthenticatedListener;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.p2p.messaging.DecryptedMsgWithPubKey;
|
||||
import io.bitsquare.p2p.messaging.SendMailboxMessageListener;
|
||||
|
@ -181,7 +181,7 @@ public class DisputeManager {
|
|||
disputes.add(dispute);
|
||||
disputesObservableList.add(dispute);
|
||||
|
||||
p2PService.sendEncryptedMailboxMessage(dispute.getContract().arbitratorAddress,
|
||||
p2PService.sendEncryptedMailboxMessage(dispute.getContract().arbitratorNodeAddress,
|
||||
dispute.getArbitratorPubKeyRing(),
|
||||
new OpenNewDisputeMessage(dispute, p2PService.getAddress()),
|
||||
new SendMailboxMessageListener() {
|
||||
|
@ -246,9 +246,9 @@ public class DisputeManager {
|
|||
// we mirrored dispute already!
|
||||
Contract contract = dispute.getContract();
|
||||
PubKeyRing peersPubKeyRing = dispute.isDisputeOpenerIsBuyer() ? contract.getBuyerPubKeyRing() : contract.getSellerPubKeyRing();
|
||||
Address peerAddress = dispute.isDisputeOpenerIsBuyer() ? contract.getBuyerAddress() : contract.getSellerAddress();
|
||||
log.trace("sendPeerOpenedDisputeMessage to peerAddress " + peerAddress);
|
||||
p2PService.sendEncryptedMailboxMessage(peerAddress,
|
||||
NodeAddress peerNodeAddress = dispute.isDisputeOpenerIsBuyer() ? contract.getBuyerNodeAddress() : contract.getSellerNodeAddress();
|
||||
log.trace("sendPeerOpenedDisputeMessage to peerAddress " + peerNodeAddress);
|
||||
p2PService.sendEncryptedMailboxMessage(peerNodeAddress,
|
||||
peersPubKeyRing,
|
||||
new PeerOpenedDisputeMessage(dispute, p2PService.getAddress()),
|
||||
new SendMailboxMessageListener() {
|
||||
|
@ -279,26 +279,26 @@ public class DisputeManager {
|
|||
p2PService.getAddress());
|
||||
disputeMailMessage.addAllAttachments(attachments);
|
||||
PubKeyRing receiverPubKeyRing = null;
|
||||
Address peerAddress = null;
|
||||
NodeAddress peerNodeAddress = null;
|
||||
if (isTrader(dispute)) {
|
||||
dispute.addDisputeMessage(disputeMailMessage);
|
||||
receiverPubKeyRing = dispute.getArbitratorPubKeyRing();
|
||||
peerAddress = dispute.getContract().arbitratorAddress;
|
||||
peerNodeAddress = dispute.getContract().arbitratorNodeAddress;
|
||||
} else if (isArbitrator(dispute)) {
|
||||
if (!disputeMailMessage.isSystemMessage())
|
||||
dispute.addDisputeMessage(disputeMailMessage);
|
||||
receiverPubKeyRing = dispute.getTraderPubKeyRing();
|
||||
Contract contract = dispute.getContract();
|
||||
if (contract.getBuyerPubKeyRing().equals(receiverPubKeyRing))
|
||||
peerAddress = contract.getBuyerAddress();
|
||||
peerNodeAddress = contract.getBuyerNodeAddress();
|
||||
else
|
||||
peerAddress = contract.getSellerAddress();
|
||||
peerNodeAddress = contract.getSellerNodeAddress();
|
||||
} else {
|
||||
log.error("That must not happen. Trader cannot communicate to other trader.");
|
||||
}
|
||||
if (receiverPubKeyRing != null) {
|
||||
log.trace("sendDisputeMailMessage to peerAddress " + peerAddress);
|
||||
p2PService.sendEncryptedMailboxMessage(peerAddress,
|
||||
log.trace("sendDisputeMailMessage to peerAddress " + peerNodeAddress);
|
||||
p2PService.sendEncryptedMailboxMessage(peerNodeAddress,
|
||||
receiverPubKeyRing,
|
||||
disputeMailMessage,
|
||||
new SendMailboxMessageListener() {
|
||||
|
@ -333,13 +333,13 @@ public class DisputeManager {
|
|||
dispute.addDisputeMessage(disputeMailMessage);
|
||||
disputeResult.setResultMailMessage(disputeMailMessage);
|
||||
|
||||
Address peerAddress;
|
||||
NodeAddress peerNodeAddress;
|
||||
Contract contract = dispute.getContract();
|
||||
if (contract.getBuyerPubKeyRing().equals(dispute.getTraderPubKeyRing()))
|
||||
peerAddress = contract.getBuyerAddress();
|
||||
peerNodeAddress = contract.getBuyerNodeAddress();
|
||||
else
|
||||
peerAddress = contract.getSellerAddress();
|
||||
p2PService.sendEncryptedMailboxMessage(peerAddress,
|
||||
peerNodeAddress = contract.getSellerNodeAddress();
|
||||
p2PService.sendEncryptedMailboxMessage(peerNodeAddress,
|
||||
dispute.getTraderPubKeyRing(),
|
||||
new DisputeResultMessage(disputeResult, p2PService.getAddress()),
|
||||
new SendMailboxMessageListener() {
|
||||
|
@ -364,9 +364,9 @@ public class DisputeManager {
|
|||
// winner (or buyer in case of 50/50) sends tx to other peer
|
||||
private void sendPeerPublishedPayoutTxMessage(Transaction transaction, Dispute dispute, Contract contract) {
|
||||
PubKeyRing peersPubKeyRing = dispute.isDisputeOpenerIsBuyer() ? contract.getSellerPubKeyRing() : contract.getBuyerPubKeyRing();
|
||||
Address peerAddress = dispute.isDisputeOpenerIsBuyer() ? contract.getSellerAddress() : contract.getBuyerAddress();
|
||||
log.trace("sendPeerPublishedPayoutTxMessage to peerAddress " + peerAddress);
|
||||
p2PService.sendEncryptedMailboxMessage(peerAddress,
|
||||
NodeAddress peerNodeAddress = dispute.isDisputeOpenerIsBuyer() ? contract.getSellerNodeAddress() : contract.getBuyerNodeAddress();
|
||||
log.trace("sendPeerPublishedPayoutTxMessage to peerAddress " + peerNodeAddress);
|
||||
p2PService.sendEncryptedMailboxMessage(peerNodeAddress,
|
||||
peersPubKeyRing,
|
||||
new PeerPublishedPayoutTxMessage(transaction.bitcoinSerialize(), dispute.getTradeId(), p2PService.getAddress()),
|
||||
new SendMailboxMessageListener() {
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.arbitration.messages;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import javafx.beans.property.BooleanProperty;
|
||||
import javafx.beans.property.SimpleBooleanProperty;
|
||||
import org.slf4j.Logger;
|
||||
|
@ -47,17 +47,17 @@ public final class DisputeMailMessage extends DisputeMessage {
|
|||
private boolean arrived;
|
||||
private boolean storedInMailbox;
|
||||
private boolean isSystemMessage;
|
||||
private final Address myAddress;
|
||||
private final NodeAddress myNodeAddress;
|
||||
|
||||
transient private BooleanProperty arrivedProperty = new SimpleBooleanProperty();
|
||||
transient private BooleanProperty storedInMailboxProperty = new SimpleBooleanProperty();
|
||||
|
||||
public DisputeMailMessage(String tradeId, int traderId, boolean senderIsTrader, String message, Address myAddress) {
|
||||
public DisputeMailMessage(String tradeId, int traderId, boolean senderIsTrader, String message, NodeAddress myNodeAddress) {
|
||||
this.tradeId = tradeId;
|
||||
this.traderId = traderId;
|
||||
this.senderIsTrader = senderIsTrader;
|
||||
this.message = message;
|
||||
this.myAddress = myAddress;
|
||||
this.myNodeAddress = myNodeAddress;
|
||||
date = new Date().getTime();
|
||||
}
|
||||
|
||||
|
@ -72,8 +72,8 @@ public final class DisputeMailMessage extends DisputeMessage {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return myAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return myNodeAddress;
|
||||
}
|
||||
|
||||
public void addAttachment(Attachment attachment) {
|
||||
|
@ -150,7 +150,7 @@ public final class DisputeMailMessage extends DisputeMessage {
|
|||
if (tradeId != null ? !tradeId.equals(that.tradeId) : that.tradeId != null) return false;
|
||||
if (message != null ? !message.equals(that.message) : that.message != null) return false;
|
||||
if (attachments != null ? !attachments.equals(that.attachments) : that.attachments != null) return false;
|
||||
return !(myAddress != null ? !myAddress.equals(that.myAddress) : that.myAddress != null);
|
||||
return !(myNodeAddress != null ? !myNodeAddress.equals(that.myNodeAddress) : that.myNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -165,7 +165,7 @@ public final class DisputeMailMessage extends DisputeMessage {
|
|||
result = 31 * result + (arrived ? 1 : 0);
|
||||
result = 31 * result + (storedInMailbox ? 1 : 0);
|
||||
result = 31 * result + (isSystemMessage ? 1 : 0);
|
||||
result = 31 * result + (myAddress != null ? myAddress.hashCode() : 0);
|
||||
result = 31 * result + (myNodeAddress != null ? myNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -19,18 +19,18 @@ package io.bitsquare.arbitration.messages;
|
|||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.arbitration.DisputeResult;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
|
||||
public final class DisputeResultMessage extends DisputeMessage {
|
||||
// That object is sent over the wire, so we need to take care of version compatibility.
|
||||
private static final long serialVersionUID = Version.NETWORK_PROTOCOL_VERSION;
|
||||
|
||||
public final DisputeResult disputeResult;
|
||||
private final Address myAddress;
|
||||
private final NodeAddress myNodeAddress;
|
||||
|
||||
public DisputeResultMessage(DisputeResult disputeResult, Address myAddress) {
|
||||
public DisputeResultMessage(DisputeResult disputeResult, NodeAddress myNodeAddress) {
|
||||
this.disputeResult = disputeResult;
|
||||
this.myAddress = myAddress;
|
||||
this.myNodeAddress = myNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -42,19 +42,19 @@ public final class DisputeResultMessage extends DisputeMessage {
|
|||
|
||||
if (disputeResult != null ? !disputeResult.equals(that.disputeResult) : that.disputeResult != null)
|
||||
return false;
|
||||
return !(myAddress != null ? !myAddress.equals(that.myAddress) : that.myAddress != null);
|
||||
return !(myNodeAddress != null ? !myNodeAddress.equals(that.myNodeAddress) : that.myNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
int result = disputeResult != null ? disputeResult.hashCode() : 0;
|
||||
result = 31 * result + (myAddress != null ? myAddress.hashCode() : 0);
|
||||
result = 31 * result + (myNodeAddress != null ? myNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return myAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return myNodeAddress;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,18 +19,18 @@ package io.bitsquare.arbitration.messages;
|
|||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.arbitration.Dispute;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
|
||||
public final class OpenNewDisputeMessage extends DisputeMessage {
|
||||
// That object is sent over the wire, so we need to take care of version compatibility.
|
||||
private static final long serialVersionUID = Version.NETWORK_PROTOCOL_VERSION;
|
||||
|
||||
public final Dispute dispute;
|
||||
private final Address myAddress;
|
||||
private final NodeAddress myNodeAddress;
|
||||
|
||||
public OpenNewDisputeMessage(Dispute dispute, Address myAddress) {
|
||||
public OpenNewDisputeMessage(Dispute dispute, NodeAddress myNodeAddress) {
|
||||
this.dispute = dispute;
|
||||
this.myAddress = myAddress;
|
||||
this.myNodeAddress = myNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -41,19 +41,19 @@ public final class OpenNewDisputeMessage extends DisputeMessage {
|
|||
OpenNewDisputeMessage that = (OpenNewDisputeMessage) o;
|
||||
|
||||
if (dispute != null ? !dispute.equals(that.dispute) : that.dispute != null) return false;
|
||||
return !(myAddress != null ? !myAddress.equals(that.myAddress) : that.myAddress != null);
|
||||
return !(myNodeAddress != null ? !myNodeAddress.equals(that.myNodeAddress) : that.myNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
int result = dispute != null ? dispute.hashCode() : 0;
|
||||
result = 31 * result + (myAddress != null ? myAddress.hashCode() : 0);
|
||||
result = 31 * result + (myNodeAddress != null ? myNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return myAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return myNodeAddress;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,17 +19,17 @@ package io.bitsquare.arbitration.messages;
|
|||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.arbitration.Dispute;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
|
||||
public final class PeerOpenedDisputeMessage extends DisputeMessage {
|
||||
// That object is sent over the wire, so we need to take care of version compatibility.
|
||||
private static final long serialVersionUID = Version.NETWORK_PROTOCOL_VERSION;
|
||||
public final Dispute dispute;
|
||||
private final Address myAddress;
|
||||
private final NodeAddress myNodeAddress;
|
||||
|
||||
public PeerOpenedDisputeMessage(Dispute dispute, Address myAddress) {
|
||||
public PeerOpenedDisputeMessage(Dispute dispute, NodeAddress myNodeAddress) {
|
||||
this.dispute = dispute;
|
||||
this.myAddress = myAddress;
|
||||
this.myNodeAddress = myNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -40,19 +40,19 @@ public final class PeerOpenedDisputeMessage extends DisputeMessage {
|
|||
PeerOpenedDisputeMessage that = (PeerOpenedDisputeMessage) o;
|
||||
|
||||
if (dispute != null ? !dispute.equals(that.dispute) : that.dispute != null) return false;
|
||||
return !(myAddress != null ? !myAddress.equals(that.myAddress) : that.myAddress != null);
|
||||
return !(myNodeAddress != null ? !myNodeAddress.equals(that.myNodeAddress) : that.myNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
int result = dispute != null ? dispute.hashCode() : 0;
|
||||
result = 31 * result + (myAddress != null ? myAddress.hashCode() : 0);
|
||||
result = 31 * result + (myNodeAddress != null ? myNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return myAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return myNodeAddress;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.arbitration.messages;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
|
@ -28,12 +28,12 @@ public final class PeerPublishedPayoutTxMessage extends DisputeMessage {
|
|||
|
||||
public final byte[] transaction;
|
||||
public final String tradeId;
|
||||
private final Address myAddress;
|
||||
private final NodeAddress myNodeAddress;
|
||||
|
||||
public PeerPublishedPayoutTxMessage(byte[] transaction, String tradeId, Address myAddress) {
|
||||
public PeerPublishedPayoutTxMessage(byte[] transaction, String tradeId, NodeAddress myNodeAddress) {
|
||||
this.transaction = transaction;
|
||||
this.tradeId = tradeId;
|
||||
this.myAddress = myAddress;
|
||||
this.myNodeAddress = myNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -45,7 +45,7 @@ public final class PeerPublishedPayoutTxMessage extends DisputeMessage {
|
|||
|
||||
if (!Arrays.equals(transaction, that.transaction)) return false;
|
||||
if (tradeId != null ? !tradeId.equals(that.tradeId) : that.tradeId != null) return false;
|
||||
return !(myAddress != null ? !myAddress.equals(that.myAddress) : that.myAddress != null);
|
||||
return !(myNodeAddress != null ? !myNodeAddress.equals(that.myNodeAddress) : that.myNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -53,13 +53,13 @@ public final class PeerPublishedPayoutTxMessage extends DisputeMessage {
|
|||
public int hashCode() {
|
||||
int result = transaction != null ? Arrays.hashCode(transaction) : 0;
|
||||
result = 31 * result + (tradeId != null ? tradeId.hashCode() : 0);
|
||||
result = 31 * result + (myAddress != null ? myAddress.hashCode() : 0);
|
||||
result = 31 * result + (myNodeAddress != null ? myNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return myAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return myNodeAddress;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ package io.bitsquare.trade;
|
|||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.btc.FeePolicy;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.storage.Storage;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.trade.BuyerAsOffererProtocol;
|
||||
|
@ -71,7 +71,7 @@ public class BuyerAsOffererTrade extends BuyerTrade implements OffererTrade, Ser
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public void handleTakeOfferRequest(TradeMessage message, Address taker) {
|
||||
public void handleTakeOfferRequest(TradeMessage message, NodeAddress taker) {
|
||||
((OffererProtocol) tradeProtocol).handleTakeOfferRequest(message, taker);
|
||||
}
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ package io.bitsquare.trade;
|
|||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.btc.FeePolicy;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.storage.Storage;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.trade.BuyerAsTakerProtocol;
|
||||
|
@ -46,8 +46,8 @@ public class BuyerAsTakerTrade extends BuyerTrade implements TakerTrade, Seriali
|
|||
// Constructor, initialization
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
public BuyerAsTakerTrade(Offer offer, Coin tradeAmount, Address tradingPeerAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerAddress, storage);
|
||||
public BuyerAsTakerTrade(Offer offer, Coin tradeAmount, NodeAddress tradingPeerNodeAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerNodeAddress, storage);
|
||||
}
|
||||
|
||||
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.storage.Storage;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.trade.BuyerProtocol;
|
||||
|
@ -36,8 +36,8 @@ public abstract class BuyerTrade extends Trade implements Serializable {
|
|||
|
||||
private static final Logger log = LoggerFactory.getLogger(BuyerAsOffererTrade.class);
|
||||
|
||||
BuyerTrade(Offer offer, Coin tradeAmount, Address tradingPeerAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerAddress, storage);
|
||||
BuyerTrade(Offer offer, Coin tradeAmount, NodeAddress tradingPeerNodeAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerNodeAddress, storage);
|
||||
}
|
||||
|
||||
BuyerTrade(Offer offer, Storage<? extends TradableList> storage) {
|
||||
|
|
|
@ -20,7 +20,7 @@ package io.bitsquare.trade;
|
|||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.common.crypto.PubKeyRing;
|
||||
import io.bitsquare.common.util.JsonExclude;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.payment.PaymentAccountContractData;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import org.bitcoinj.core.Coin;
|
||||
|
@ -41,7 +41,7 @@ public class Contract implements Serializable {
|
|||
public final Offer offer;
|
||||
private final long tradeAmount;
|
||||
public final String takeOfferFeeTxID;
|
||||
public final Address arbitratorAddress;
|
||||
public final NodeAddress arbitratorNodeAddress;
|
||||
private final boolean isBuyerOffererAndSellerTaker;
|
||||
private final String offererAccountId;
|
||||
private final String takerAccountId;
|
||||
|
@ -51,8 +51,8 @@ public class Contract implements Serializable {
|
|||
private final PubKeyRing offererPubKeyRing;
|
||||
@JsonExclude
|
||||
private final PubKeyRing takerPubKeyRing;
|
||||
private final Address buyerAddress;
|
||||
private final Address sellerAddress;
|
||||
private final NodeAddress buyerNodeAddress;
|
||||
private final NodeAddress sellerNodeAddress;
|
||||
|
||||
|
||||
private final String offererPayoutAddressString;
|
||||
|
@ -65,9 +65,9 @@ public class Contract implements Serializable {
|
|||
public Contract(Offer offer,
|
||||
Coin tradeAmount,
|
||||
String takeOfferFeeTxID,
|
||||
Address buyerAddress,
|
||||
Address sellerAddress,
|
||||
Address arbitratorAddress,
|
||||
NodeAddress buyerNodeAddress,
|
||||
NodeAddress sellerNodeAddress,
|
||||
NodeAddress arbitratorNodeAddress,
|
||||
boolean isBuyerOffererAndSellerTaker,
|
||||
String offererAccountId,
|
||||
String takerAccountId,
|
||||
|
@ -80,11 +80,11 @@ public class Contract implements Serializable {
|
|||
byte[] offererBtcPubKey,
|
||||
byte[] takerBtcPubKey) {
|
||||
this.offer = offer;
|
||||
this.buyerAddress = buyerAddress;
|
||||
this.sellerAddress = sellerAddress;
|
||||
this.buyerNodeAddress = buyerNodeAddress;
|
||||
this.sellerNodeAddress = sellerNodeAddress;
|
||||
this.tradeAmount = tradeAmount.value;
|
||||
this.takeOfferFeeTxID = takeOfferFeeTxID;
|
||||
this.arbitratorAddress = arbitratorAddress;
|
||||
this.arbitratorNodeAddress = arbitratorNodeAddress;
|
||||
this.isBuyerOffererAndSellerTaker = isBuyerOffererAndSellerTaker;
|
||||
this.offererAccountId = offererAccountId;
|
||||
this.takerAccountId = takerAccountId;
|
||||
|
@ -150,13 +150,13 @@ public class Contract implements Serializable {
|
|||
return Coin.valueOf(tradeAmount);
|
||||
}
|
||||
|
||||
public Address getBuyerAddress() {
|
||||
return buyerAddress;
|
||||
public NodeAddress getBuyerNodeAddress() {
|
||||
return buyerNodeAddress;
|
||||
}
|
||||
|
||||
|
||||
public Address getSellerAddress() {
|
||||
return sellerAddress;
|
||||
public NodeAddress getSellerNodeAddress() {
|
||||
return sellerNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -165,7 +165,7 @@ public class Contract implements Serializable {
|
|||
"offer=" + offer +
|
||||
", tradeAmount=" + tradeAmount +
|
||||
", takeOfferFeeTxID='" + takeOfferFeeTxID + '\'' +
|
||||
", arbitratorAddress=" + arbitratorAddress +
|
||||
", arbitratorAddress=" + arbitratorNodeAddress +
|
||||
", isBuyerOffererAndSellerTaker=" + isBuyerOffererAndSellerTaker +
|
||||
", offererAccountId='" + offererAccountId + '\'' +
|
||||
", takerAccountId='" + takerAccountId + '\'' +
|
||||
|
@ -173,8 +173,8 @@ public class Contract implements Serializable {
|
|||
", takerPaymentAccountContractData=" + takerPaymentAccountContractData +
|
||||
", offererPubKeyRing=" + offererPubKeyRing +
|
||||
", takerPubKeyRing=" + takerPubKeyRing +
|
||||
", buyerAddress=" + buyerAddress +
|
||||
", sellerAddress=" + sellerAddress +
|
||||
", buyerAddress=" + buyerNodeAddress +
|
||||
", sellerAddress=" + sellerNodeAddress +
|
||||
", offererPayoutAddressString='" + offererPayoutAddressString + '\'' +
|
||||
", takerPayoutAddressString='" + takerPayoutAddressString + '\'' +
|
||||
", offererBtcPubKey=" + Arrays.toString(offererBtcPubKey) +
|
||||
|
@ -194,7 +194,7 @@ public class Contract implements Serializable {
|
|||
if (offer != null ? !offer.equals(contract.offer) : contract.offer != null) return false;
|
||||
if (takeOfferFeeTxID != null ? !takeOfferFeeTxID.equals(contract.takeOfferFeeTxID) : contract.takeOfferFeeTxID != null)
|
||||
return false;
|
||||
if (arbitratorAddress != null ? !arbitratorAddress.equals(contract.arbitratorAddress) : contract.arbitratorAddress != null)
|
||||
if (arbitratorNodeAddress != null ? !arbitratorNodeAddress.equals(contract.arbitratorNodeAddress) : contract.arbitratorNodeAddress != null)
|
||||
return false;
|
||||
if (offererAccountId != null ? !offererAccountId.equals(contract.offererAccountId) : contract.offererAccountId != null)
|
||||
return false;
|
||||
|
@ -208,9 +208,9 @@ public class Contract implements Serializable {
|
|||
return false;
|
||||
if (takerPubKeyRing != null ? !takerPubKeyRing.equals(contract.takerPubKeyRing) : contract.takerPubKeyRing != null)
|
||||
return false;
|
||||
if (buyerAddress != null ? !buyerAddress.equals(contract.buyerAddress) : contract.buyerAddress != null)
|
||||
if (buyerNodeAddress != null ? !buyerNodeAddress.equals(contract.buyerNodeAddress) : contract.buyerNodeAddress != null)
|
||||
return false;
|
||||
if (sellerAddress != null ? !sellerAddress.equals(contract.sellerAddress) : contract.sellerAddress != null)
|
||||
if (sellerNodeAddress != null ? !sellerNodeAddress.equals(contract.sellerNodeAddress) : contract.sellerNodeAddress != null)
|
||||
return false;
|
||||
if (offererPayoutAddressString != null ? !offererPayoutAddressString.equals(contract.offererPayoutAddressString) : contract.offererPayoutAddressString != null)
|
||||
return false;
|
||||
|
@ -226,7 +226,7 @@ public class Contract implements Serializable {
|
|||
int result = offer != null ? offer.hashCode() : 0;
|
||||
result = 31 * result + (int) (tradeAmount ^ (tradeAmount >>> 32));
|
||||
result = 31 * result + (takeOfferFeeTxID != null ? takeOfferFeeTxID.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorAddress != null ? arbitratorAddress.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorNodeAddress != null ? arbitratorNodeAddress.hashCode() : 0);
|
||||
result = 31 * result + (isBuyerOffererAndSellerTaker ? 1 : 0);
|
||||
result = 31 * result + (offererAccountId != null ? offererAccountId.hashCode() : 0);
|
||||
result = 31 * result + (takerAccountId != null ? takerAccountId.hashCode() : 0);
|
||||
|
@ -234,8 +234,8 @@ public class Contract implements Serializable {
|
|||
result = 31 * result + (takerPaymentAccountContractData != null ? takerPaymentAccountContractData.hashCode() : 0);
|
||||
result = 31 * result + (offererPubKeyRing != null ? offererPubKeyRing.hashCode() : 0);
|
||||
result = 31 * result + (takerPubKeyRing != null ? takerPubKeyRing.hashCode() : 0);
|
||||
result = 31 * result + (buyerAddress != null ? buyerAddress.hashCode() : 0);
|
||||
result = 31 * result + (sellerAddress != null ? sellerAddress.hashCode() : 0);
|
||||
result = 31 * result + (buyerNodeAddress != null ? buyerNodeAddress.hashCode() : 0);
|
||||
result = 31 * result + (sellerNodeAddress != null ? sellerNodeAddress.hashCode() : 0);
|
||||
result = 31 * result + (offererPayoutAddressString != null ? offererPayoutAddressString.hashCode() : 0);
|
||||
result = 31 * result + (takerPayoutAddressString != null ? takerPayoutAddressString.hashCode() : 0);
|
||||
result = 31 * result + (offererBtcPubKey != null ? Arrays.hashCode(offererBtcPubKey) : 0);
|
||||
|
|
|
@ -18,9 +18,9 @@
|
|||
package io.bitsquare.trade;
|
||||
|
||||
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.trade.protocol.trade.messages.TradeMessage;
|
||||
|
||||
public interface OffererTrade {
|
||||
void handleTakeOfferRequest(TradeMessage message, Address peerAddress);
|
||||
void handleTakeOfferRequest(TradeMessage message, NodeAddress peerNodeAddress);
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.storage.Storage;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.trade.OffererProtocol;
|
||||
|
@ -67,7 +67,7 @@ public class SellerAsOffererTrade extends SellerTrade implements OffererTrade, S
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public void handleTakeOfferRequest(TradeMessage message, Address taker) {
|
||||
public void handleTakeOfferRequest(TradeMessage message, NodeAddress taker) {
|
||||
((OffererProtocol) tradeProtocol).handleTakeOfferRequest(message, taker);
|
||||
}
|
||||
}
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.storage.Storage;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.trade.SellerAsTakerProtocol;
|
||||
|
@ -43,8 +43,8 @@ public class SellerAsTakerTrade extends SellerTrade implements TakerTrade, Seria
|
|||
// Constructor, initialization
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
public SellerAsTakerTrade(Offer offer, Coin tradeAmount, Address tradingPeerAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerAddress, storage);
|
||||
public SellerAsTakerTrade(Offer offer, Coin tradeAmount, NodeAddress tradingPeerNodeAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerNodeAddress, storage);
|
||||
}
|
||||
|
||||
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException {
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.storage.Storage;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.trade.SellerProtocol;
|
||||
|
@ -36,8 +36,8 @@ public abstract class SellerTrade extends Trade implements Serializable {
|
|||
|
||||
private static final Logger log = LoggerFactory.getLogger(BuyerAsTakerTrade.class);
|
||||
|
||||
public SellerTrade(Offer offer, Coin tradeAmount, Address tradingPeerAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerAddress, storage);
|
||||
public SellerTrade(Offer offer, Coin tradeAmount, NodeAddress tradingPeerNodeAddress, Storage<? extends TradableList> storage) {
|
||||
super(offer, tradeAmount, tradingPeerNodeAddress, storage);
|
||||
}
|
||||
|
||||
public SellerTrade(Offer offer, Storage<? extends TradableList> storage) {
|
||||
|
|
|
@ -28,7 +28,7 @@ import io.bitsquare.btc.TradeWalletService;
|
|||
import io.bitsquare.btc.WalletService;
|
||||
import io.bitsquare.common.crypto.KeyRing;
|
||||
import io.bitsquare.common.taskrunner.Model;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.p2p.messaging.DecryptedMsgWithPubKey;
|
||||
import io.bitsquare.storage.Storage;
|
||||
|
@ -127,7 +127,7 @@ abstract public class Trade implements Tradable, Model, Serializable {
|
|||
|
||||
// Mutable
|
||||
private Coin tradeAmount;
|
||||
private Address tradingPeerAddress;
|
||||
private NodeAddress tradingPeerNodeAddress;
|
||||
transient private ObjectProperty<Coin> tradeAmountProperty;
|
||||
transient private ObjectProperty<Fiat> tradeVolumeProperty;
|
||||
|
||||
|
@ -166,7 +166,7 @@ abstract public class Trade implements Tradable, Model, Serializable {
|
|||
private long lockTimeAsBlockHeight;
|
||||
private int openDisputeTimeAsBlockHeight;
|
||||
private int checkPaymentTimeAsBlockHeight;
|
||||
private Address arbitratorAddress;
|
||||
private NodeAddress arbitratorNodeAddress;
|
||||
private String takerPaymentAccountId;
|
||||
private boolean halfTradePeriodReachedWarningDisplayed;
|
||||
private boolean tradePeriodOverWarningDisplayed;
|
||||
|
@ -192,12 +192,12 @@ abstract public class Trade implements Tradable, Model, Serializable {
|
|||
}
|
||||
|
||||
// taker
|
||||
protected Trade(Offer offer, Coin tradeAmount, Address tradingPeerAddress,
|
||||
protected Trade(Offer offer, Coin tradeAmount, NodeAddress tradingPeerNodeAddress,
|
||||
Storage<? extends TradableList> storage) {
|
||||
|
||||
this(offer, storage);
|
||||
this.tradeAmount = tradeAmount;
|
||||
this.tradingPeerAddress = tradingPeerAddress;
|
||||
this.tradingPeerNodeAddress = tradingPeerNodeAddress;
|
||||
tradeAmountProperty.set(tradeAmount);
|
||||
tradeVolumeProperty.set(getTradeVolume());
|
||||
}
|
||||
|
@ -417,16 +417,16 @@ abstract public class Trade implements Tradable, Model, Serializable {
|
|||
this.takeOfferDate = takeOfferDate;
|
||||
}
|
||||
|
||||
public void setTradingPeerAddress(Address tradingPeerAddress) {
|
||||
if (tradingPeerAddress == null)
|
||||
public void setTradingPeerNodeAddress(NodeAddress tradingPeerNodeAddress) {
|
||||
if (tradingPeerNodeAddress == null)
|
||||
log.error("tradingPeerAddress=null");
|
||||
else
|
||||
this.tradingPeerAddress = tradingPeerAddress;
|
||||
this.tradingPeerNodeAddress = tradingPeerNodeAddress;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public Address getTradingPeerAddress() {
|
||||
return tradingPeerAddress;
|
||||
public NodeAddress getTradingPeerNodeAddress() {
|
||||
return tradingPeerNodeAddress;
|
||||
}
|
||||
|
||||
public void setTradeAmount(Coin tradeAmount) {
|
||||
|
@ -519,12 +519,12 @@ abstract public class Trade implements Tradable, Model, Serializable {
|
|||
return errorMessageProperty;
|
||||
}
|
||||
|
||||
public Address getArbitratorAddress() {
|
||||
return arbitratorAddress;
|
||||
public NodeAddress getArbitratorNodeAddress() {
|
||||
return arbitratorNodeAddress;
|
||||
}
|
||||
|
||||
public void setArbitratorAddress(Address arbitratorAddress) {
|
||||
this.arbitratorAddress = arbitratorAddress;
|
||||
public void setArbitratorNodeAddress(NodeAddress arbitratorNodeAddress) {
|
||||
this.arbitratorNodeAddress = arbitratorNodeAddress;
|
||||
}
|
||||
|
||||
public String getTakerPaymentAccountId() {
|
||||
|
@ -610,7 +610,7 @@ abstract public class Trade implements Tradable, Model, Serializable {
|
|||
public String toString() {
|
||||
return "Trade{" +
|
||||
"tradeAmount=" + tradeAmount +
|
||||
", tradingPeer=" + tradingPeerAddress +
|
||||
", tradingPeer=" + tradingPeerNodeAddress +
|
||||
", tradeAmountProperty=" + tradeAmountProperty +
|
||||
", tradeVolumeProperty=" + tradeVolumeProperty +
|
||||
", processStateProperty=" + processStateProperty +
|
||||
|
|
|
@ -26,9 +26,9 @@ import io.bitsquare.common.UserThread;
|
|||
import io.bitsquare.common.crypto.KeyRing;
|
||||
import io.bitsquare.common.handlers.FaultHandler;
|
||||
import io.bitsquare.common.handlers.ResultHandler;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.FirstPeerAuthenticatedListener;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.p2p.messaging.DecryptedMailListener;
|
||||
import io.bitsquare.p2p.messaging.DecryptedMailboxListener;
|
||||
|
@ -114,27 +114,27 @@ public class TradeManager {
|
|||
|
||||
p2PService.addDecryptedMailListener(new DecryptedMailListener() {
|
||||
@Override
|
||||
public void onMailMessage(DecryptedMsgWithPubKey decryptedMsgWithPubKey, Address peerAddress) {
|
||||
public void onMailMessage(DecryptedMsgWithPubKey decryptedMsgWithPubKey, NodeAddress peerNodeAddress) {
|
||||
Message message = decryptedMsgWithPubKey.message;
|
||||
|
||||
// Handler for incoming initial messages from taker
|
||||
if (message instanceof PayDepositRequest) {
|
||||
log.trace("Received PayDepositRequest: " + message);
|
||||
handleInitialTakeOfferRequest((PayDepositRequest) message, peerAddress);
|
||||
handleInitialTakeOfferRequest((PayDepositRequest) message, peerNodeAddress);
|
||||
}
|
||||
}
|
||||
});
|
||||
p2PService.addDecryptedMailboxListener(new DecryptedMailboxListener() {
|
||||
@Override
|
||||
public void onMailboxMessageAdded(DecryptedMsgWithPubKey decryptedMsgWithPubKey, Address senderAddress) {
|
||||
public void onMailboxMessageAdded(DecryptedMsgWithPubKey decryptedMsgWithPubKey, NodeAddress senderNodeAddress) {
|
||||
log.trace("onMailboxMessageAdded decryptedMessageWithPubKey: " + decryptedMsgWithPubKey);
|
||||
log.trace("onMailboxMessageAdded senderAddress: " + senderAddress);
|
||||
log.trace("onMailboxMessageAdded senderAddress: " + senderNodeAddress);
|
||||
Message message = decryptedMsgWithPubKey.message;
|
||||
if (message instanceof PayDepositRequest) {
|
||||
PayDepositRequest payDepositRequest = (PayDepositRequest) message;
|
||||
log.trace("Received payDepositRequest: " + payDepositRequest);
|
||||
if (payDepositRequest.getSenderAddress().equals(senderAddress))
|
||||
handleInitialTakeOfferRequest(payDepositRequest, senderAddress);
|
||||
if (payDepositRequest.getSenderNodeAddress().equals(senderNodeAddress))
|
||||
handleInitialTakeOfferRequest(payDepositRequest, senderNodeAddress);
|
||||
else
|
||||
log.warn("Peer address not matching for payDepositRequest");
|
||||
} else if (message instanceof TradeMessage) {
|
||||
|
@ -192,8 +192,8 @@ public class TradeManager {
|
|||
//failedTrades.stream().filter(Trade::isTakerFeePaid).forEach(this::addTradeToFailedTrades);
|
||||
}
|
||||
|
||||
private void handleInitialTakeOfferRequest(TradeMessage message, Address peerAddress) {
|
||||
log.trace("handleNewMessage: message = " + message.getClass().getSimpleName() + " from " + peerAddress);
|
||||
private void handleInitialTakeOfferRequest(TradeMessage message, NodeAddress peerNodeAddress) {
|
||||
log.trace("handleNewMessage: message = " + message.getClass().getSimpleName() + " from " + peerNodeAddress);
|
||||
try {
|
||||
nonEmptyStringOf(message.tradeId);
|
||||
} catch (Throwable t) {
|
||||
|
@ -215,7 +215,7 @@ public class TradeManager {
|
|||
trade.setStorage(tradableListStorage);
|
||||
initTrade(trade);
|
||||
trades.add(trade);
|
||||
((OffererTrade) trade).handleTakeOfferRequest(message, peerAddress);
|
||||
((OffererTrade) trade).handleTakeOfferRequest(message, peerNodeAddress);
|
||||
} else {
|
||||
// TODO respond
|
||||
//(RequestDepositTxInputsMessage)message.
|
||||
|
@ -278,9 +278,9 @@ public class TradeManager {
|
|||
TradeResultHandler tradeResultHandler) {
|
||||
Trade trade;
|
||||
if (offer.getDirection() == Offer.Direction.BUY)
|
||||
trade = new SellerAsTakerTrade(offer, amount, model.getPeerAddress(), tradableListStorage);
|
||||
trade = new SellerAsTakerTrade(offer, amount, model.getPeerNodeAddress(), tradableListStorage);
|
||||
else
|
||||
trade = new BuyerAsTakerTrade(offer, amount, model.getPeerAddress(), tradableListStorage);
|
||||
trade = new BuyerAsTakerTrade(offer, amount, model.getPeerNodeAddress(), tradableListStorage);
|
||||
|
||||
trade.setTakeOfferDate(new Date());
|
||||
trade.setTakerPaymentAccountId(paymentAccountId);
|
||||
|
|
|
@ -24,7 +24,7 @@ import io.bitsquare.common.crypto.PubKeyRing;
|
|||
import io.bitsquare.common.handlers.ResultHandler;
|
||||
import io.bitsquare.common.util.JsonExclude;
|
||||
import io.bitsquare.locale.Country;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.storage.data.PubKeyProtectedExpirablePayload;
|
||||
import io.bitsquare.payment.PaymentMethod;
|
||||
import io.bitsquare.trade.protocol.availability.OfferAvailabilityModel;
|
||||
|
@ -79,7 +79,7 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
private final long fiatPrice;
|
||||
private final long amount;
|
||||
private final long minAmount;
|
||||
private final Address offererAddress;
|
||||
private final NodeAddress offererNodeAddress;
|
||||
@JsonExclude
|
||||
private final PubKeyRing pubKeyRing;
|
||||
private final String paymentMethodName;
|
||||
|
@ -89,7 +89,7 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
|
||||
@Nullable
|
||||
private final List<String> acceptedCountryCodes;
|
||||
private final List<Address> arbitratorAddresses;
|
||||
private final List<NodeAddress> arbitratorNodeAddresses;
|
||||
|
||||
// Mutable property. Has to be set before offer is save in P2P network as it changes the objects hash!
|
||||
private String offerFeePaymentTxID;
|
||||
|
@ -111,7 +111,7 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
public Offer(String id,
|
||||
Address offererAddress,
|
||||
NodeAddress offererNodeAddress,
|
||||
PubKeyRing pubKeyRing,
|
||||
Direction direction,
|
||||
long fiatPrice,
|
||||
|
@ -121,10 +121,10 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
String currencyCode,
|
||||
@Nullable Country paymentMethodCountry,
|
||||
String offererPaymentAccountId,
|
||||
List<Address> arbitratorAddresses,
|
||||
List<NodeAddress> arbitratorNodeAddresses,
|
||||
@Nullable List<String> acceptedCountryCodes) {
|
||||
this.id = id;
|
||||
this.offererAddress = offererAddress;
|
||||
this.offererNodeAddress = offererNodeAddress;
|
||||
this.pubKeyRing = pubKeyRing;
|
||||
this.direction = direction;
|
||||
this.fiatPrice = fiatPrice;
|
||||
|
@ -134,7 +134,7 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
this.currencyCode = currencyCode;
|
||||
this.paymentMethodCountryCode = paymentMethodCountry != null ? paymentMethodCountry.code : null;
|
||||
this.offererPaymentAccountId = offererPaymentAccountId;
|
||||
this.arbitratorAddresses = arbitratorAddresses;
|
||||
this.arbitratorNodeAddresses = arbitratorNodeAddresses;
|
||||
this.acceptedCountryCodes = acceptedCountryCodes;
|
||||
|
||||
date = new Date().getTime();
|
||||
|
@ -155,7 +155,7 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
|
||||
public void validate() {
|
||||
checkNotNull(getAmount(), "Amount is null");
|
||||
checkNotNull(getArbitratorAddresses(), "Arbitrator is null");
|
||||
checkNotNull(getArbitratorNodeAddresses(), "Arbitrator is null");
|
||||
checkNotNull(getDate(), "CreationDate is null");
|
||||
checkNotNull(getCurrencyCode(), "Currency is null");
|
||||
checkNotNull(getDirection(), "Direction is null");
|
||||
|
@ -266,8 +266,8 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
return id.substring(0, 8);
|
||||
}
|
||||
|
||||
public Address getOffererAddress() {
|
||||
return offererAddress;
|
||||
public NodeAddress getOffererNodeAddress() {
|
||||
return offererNodeAddress;
|
||||
}
|
||||
|
||||
public PubKeyRing getPubKeyRing() {
|
||||
|
@ -316,8 +316,8 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
return offerFeePaymentTxID;
|
||||
}
|
||||
|
||||
public List<Address> getArbitratorAddresses() {
|
||||
return arbitratorAddresses;
|
||||
public List<NodeAddress> getArbitratorNodeAddresses() {
|
||||
return arbitratorNodeAddresses;
|
||||
}
|
||||
|
||||
public Date getDate() {
|
||||
|
@ -354,7 +354,7 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
if (id != null ? !id.equals(offer.id) : offer.id != null) return false;
|
||||
if (direction != offer.direction) return false;
|
||||
if (currencyCode != null ? !currencyCode.equals(offer.currencyCode) : offer.currencyCode != null) return false;
|
||||
if (offererAddress != null ? !offererAddress.equals(offer.offererAddress) : offer.offererAddress != null)
|
||||
if (offererNodeAddress != null ? !offererNodeAddress.equals(offer.offererNodeAddress) : offer.offererNodeAddress != null)
|
||||
return false;
|
||||
if (pubKeyRing != null ? !pubKeyRing.equals(offer.pubKeyRing) : offer.pubKeyRing != null) return false;
|
||||
if (paymentMethodName != null ? !paymentMethodName.equals(offer.paymentMethodName) : offer.paymentMethodName != null)
|
||||
|
@ -365,7 +365,7 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
return false;
|
||||
if (acceptedCountryCodes != null ? !acceptedCountryCodes.equals(offer.acceptedCountryCodes) : offer.acceptedCountryCodes != null)
|
||||
return false;
|
||||
if (arbitratorAddresses != null ? !arbitratorAddresses.equals(offer.arbitratorAddresses) : offer.arbitratorAddresses != null)
|
||||
if (arbitratorNodeAddresses != null ? !arbitratorNodeAddresses.equals(offer.arbitratorNodeAddresses) : offer.arbitratorNodeAddresses != null)
|
||||
return false;
|
||||
return !(offerFeePaymentTxID != null ? !offerFeePaymentTxID.equals(offer.offerFeePaymentTxID) : offer.offerFeePaymentTxID != null);
|
||||
|
||||
|
@ -380,13 +380,13 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
result = 31 * result + (int) (fiatPrice ^ (fiatPrice >>> 32));
|
||||
result = 31 * result + (int) (amount ^ (amount >>> 32));
|
||||
result = 31 * result + (int) (minAmount ^ (minAmount >>> 32));
|
||||
result = 31 * result + (offererAddress != null ? offererAddress.hashCode() : 0);
|
||||
result = 31 * result + (offererNodeAddress != null ? offererNodeAddress.hashCode() : 0);
|
||||
result = 31 * result + (pubKeyRing != null ? pubKeyRing.hashCode() : 0);
|
||||
result = 31 * result + (paymentMethodName != null ? paymentMethodName.hashCode() : 0);
|
||||
result = 31 * result + (paymentMethodCountryCode != null ? paymentMethodCountryCode.hashCode() : 0);
|
||||
result = 31 * result + (offererPaymentAccountId != null ? offererPaymentAccountId.hashCode() : 0);
|
||||
result = 31 * result + (acceptedCountryCodes != null ? acceptedCountryCodes.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorAddresses != null ? arbitratorAddresses.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorNodeAddresses != null ? arbitratorNodeAddresses.hashCode() : 0);
|
||||
result = 31 * result + (offerFeePaymentTxID != null ? offerFeePaymentTxID.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
|
@ -401,13 +401,13 @@ public final class Offer implements PubKeyProtectedExpirablePayload {
|
|||
", fiatPrice=" + fiatPrice +
|
||||
", amount=" + amount +
|
||||
", minAmount=" + minAmount +
|
||||
", offererAddress=" + offererAddress +
|
||||
", offererAddress=" + offererNodeAddress +
|
||||
", pubKeyRing=" + pubKeyRing +
|
||||
", paymentMethodName='" + paymentMethodName + '\'' +
|
||||
", paymentMethodCountryCode='" + paymentMethodCountryCode + '\'' +
|
||||
", offererPaymentAccountId='" + offererPaymentAccountId + '\'' +
|
||||
", acceptedCountryCodes=" + acceptedCountryCodes +
|
||||
", arbitratorAddresses=" + arbitratorAddresses +
|
||||
", arbitratorAddresses=" + arbitratorNodeAddresses +
|
||||
", offerFeePaymentTxID='" + offerFeePaymentTxID + '\'' +
|
||||
", state=" + state +
|
||||
", stateProperty=" + stateProperty +
|
||||
|
|
|
@ -24,9 +24,9 @@ import io.bitsquare.common.UserThread;
|
|||
import io.bitsquare.common.crypto.KeyRing;
|
||||
import io.bitsquare.common.handlers.ErrorMessageHandler;
|
||||
import io.bitsquare.common.handlers.ResultHandler;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.FirstPeerAuthenticatedListener;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.p2p.messaging.SendMailMessageListener;
|
||||
import io.bitsquare.storage.Storage;
|
||||
|
@ -287,7 +287,7 @@ public class OpenOfferManager {
|
|||
// Offer Availability
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handleOfferAvailabilityRequest(OfferAvailabilityRequest message, Address sender) {
|
||||
private void handleOfferAvailabilityRequest(OfferAvailabilityRequest message, NodeAddress sender) {
|
||||
log.trace("handleNewMessage: message = " + message.getClass().getSimpleName() + " from " + sender);
|
||||
try {
|
||||
nonEmptyStringOf(message.offerId);
|
||||
|
|
|
@ -19,7 +19,7 @@ package io.bitsquare.trade.protocol.availability;
|
|||
|
||||
import io.bitsquare.common.crypto.PubKeyRing;
|
||||
import io.bitsquare.common.taskrunner.Model;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import io.bitsquare.trade.protocol.availability.messages.OfferMessage;
|
||||
|
@ -33,7 +33,7 @@ public class OfferAvailabilityModel implements Model {
|
|||
public final PubKeyRing pubKeyRing;
|
||||
public final P2PService p2PService;
|
||||
|
||||
private Address peerAddress;
|
||||
private NodeAddress peerNodeAddress;
|
||||
private OfferMessage message;
|
||||
|
||||
public OfferAvailabilityModel(Offer offer,
|
||||
|
@ -44,12 +44,12 @@ public class OfferAvailabilityModel implements Model {
|
|||
this.p2PService = p2PService;
|
||||
}
|
||||
|
||||
public Address getPeerAddress() {
|
||||
return peerAddress;
|
||||
public NodeAddress getPeerNodeAddress() {
|
||||
return peerNodeAddress;
|
||||
}
|
||||
|
||||
public void setPeerAddress(Address peerAddress) {
|
||||
this.peerAddress = peerAddress;
|
||||
public void setPeerNodeAddress(NodeAddress peerNodeAddress) {
|
||||
this.peerNodeAddress = peerNodeAddress;
|
||||
}
|
||||
|
||||
public void setMessage(OfferMessage message) {
|
||||
|
|
|
@ -85,7 +85,7 @@ public class OfferAvailabilityProtocol {
|
|||
model.offer.setState(Offer.State.UNDEFINED);
|
||||
|
||||
model.p2PService.addDecryptedMailListener(decryptedMailListener);
|
||||
model.setPeerAddress(model.offer.getOffererAddress());
|
||||
model.setPeerNodeAddress(model.offer.getOffererNodeAddress());
|
||||
|
||||
taskRunner = new TaskRunner<>(model,
|
||||
() -> {
|
||||
|
|
|
@ -38,7 +38,7 @@ public class SendOfferAvailabilityRequest extends Task<OfferAvailabilityModel> {
|
|||
try {
|
||||
runInterceptHook();
|
||||
|
||||
model.p2PService.sendEncryptedMailMessage(model.getPeerAddress(),
|
||||
model.p2PService.sendEncryptedMailMessage(model.getPeerNodeAddress(),
|
||||
model.offer.getPubKeyRing(),
|
||||
new OfferAvailabilityRequest(model.offer.getId(), model.getPubKeyRing()),
|
||||
new SendMailMessageListener() {
|
||||
|
|
|
@ -21,7 +21,7 @@ import io.bitsquare.arbitration.Arbitrator;
|
|||
import io.bitsquare.btc.FeePolicy;
|
||||
import io.bitsquare.common.taskrunner.Task;
|
||||
import io.bitsquare.common.taskrunner.TaskRunner;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.trade.protocol.placeoffer.PlaceOfferModel;
|
||||
import io.bitsquare.trade.protocol.trade.ArbitrationSelectionRule;
|
||||
import org.bitcoinj.core.Transaction;
|
||||
|
@ -40,9 +40,9 @@ public class CreateOfferFeeTx extends Task<PlaceOfferModel> {
|
|||
try {
|
||||
runInterceptHook();
|
||||
|
||||
Address selectedArbitratorAddress = ArbitrationSelectionRule.select(model.user.getAcceptedArbitratorAddresses(), model.offer);
|
||||
log.debug("selectedArbitratorAddress " + selectedArbitratorAddress);
|
||||
Arbitrator selectedArbitrator = model.user.getAcceptedArbitratorByAddress(selectedArbitratorAddress);
|
||||
NodeAddress selectedArbitratorNodeAddress = ArbitrationSelectionRule.select(model.user.getAcceptedArbitratorAddresses(), model.offer);
|
||||
log.debug("selectedArbitratorAddress " + selectedArbitratorNodeAddress);
|
||||
Arbitrator selectedArbitrator = model.user.getAcceptedArbitratorByAddress(selectedArbitratorNodeAddress);
|
||||
Transaction transaction = model.tradeWalletService.createTradingFeeTx(
|
||||
model.walletService.getAddressEntryByOfferId(model.offer.getId()),
|
||||
FeePolicy.getCreateOfferFee(),
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
package io.bitsquare.trade.protocol.trade;
|
||||
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.trade.offer.Offer;
|
||||
import org.bitcoinj.core.Sha256Hash;
|
||||
import org.slf4j.Logger;
|
||||
|
@ -32,15 +32,15 @@ import static com.google.common.base.Preconditions.checkArgument;
|
|||
public class ArbitrationSelectionRule {
|
||||
private static final Logger log = LoggerFactory.getLogger(ArbitrationSelectionRule.class);
|
||||
|
||||
public static Address select(List<Address> acceptedArbitratorAddresses, Offer offer) {
|
||||
List<Address> candidates = new ArrayList<>();
|
||||
for (Address offerArbitratorAddress : offer.getArbitratorAddresses()) {
|
||||
candidates.addAll(acceptedArbitratorAddresses.stream().filter(offerArbitratorAddress::equals).collect(Collectors.toList()));
|
||||
public static NodeAddress select(List<NodeAddress> acceptedArbitratorNodeAddresses, Offer offer) {
|
||||
List<NodeAddress> candidates = new ArrayList<>();
|
||||
for (NodeAddress offerArbitratorNodeAddress : offer.getArbitratorNodeAddresses()) {
|
||||
candidates.addAll(acceptedArbitratorNodeAddresses.stream().filter(offerArbitratorNodeAddress::equals).collect(Collectors.toList()));
|
||||
}
|
||||
checkArgument(candidates.size() > 0, "candidates.size() <= 0");
|
||||
|
||||
int index = Math.abs(Sha256Hash.hash(offer.getId().getBytes()).hashCode()) % candidates.size();
|
||||
Address selectedArbitrator = candidates.get(index);
|
||||
NodeAddress selectedArbitrator = candidates.get(index);
|
||||
log.debug("selectedArbitrator " + selectedArbitrator);
|
||||
return selectedArbitrator;
|
||||
}
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
|
||||
package io.bitsquare.trade.protocol.trade;
|
||||
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
import io.bitsquare.trade.BuyerAsOffererTrade;
|
||||
import io.bitsquare.trade.Trade;
|
||||
|
@ -79,11 +79,11 @@ public class BuyerAsOffererProtocol extends TradeProtocol implements BuyerProtoc
|
|||
|
||||
if (message instanceof MailboxMessage) {
|
||||
MailboxMessage mailboxMessage = (MailboxMessage) message;
|
||||
Address peerAddress = mailboxMessage.getSenderAddress();
|
||||
NodeAddress peerNodeAddress = mailboxMessage.getSenderNodeAddress();
|
||||
if (message instanceof FinalizePayoutTxRequest) {
|
||||
handle((FinalizePayoutTxRequest) message, peerAddress);
|
||||
handle((FinalizePayoutTxRequest) message, peerNodeAddress);
|
||||
} else if (message instanceof DepositTxPublishedMessage) {
|
||||
handle((DepositTxPublishedMessage) message, peerAddress);
|
||||
handle((DepositTxPublishedMessage) message, peerNodeAddress);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -94,11 +94,11 @@ public class BuyerAsOffererProtocol extends TradeProtocol implements BuyerProtoc
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public void handleTakeOfferRequest(TradeMessage message, Address peerAddress) {
|
||||
public void handleTakeOfferRequest(TradeMessage message, NodeAddress peerNodeAddress) {
|
||||
checkTradeId(processModel.getId(), message);
|
||||
checkArgument(message instanceof PayDepositRequest);
|
||||
processModel.setTradeMessage(message);
|
||||
processModel.setTempTradingPeerAddress(peerAddress);
|
||||
processModel.setTempTradingPeerNodeAddress(peerNodeAddress);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(buyerAsOffererTrade,
|
||||
() -> handleTaskRunnerSuccess("handleTakeOfferRequest"),
|
||||
|
@ -123,10 +123,10 @@ public class BuyerAsOffererProtocol extends TradeProtocol implements BuyerProtoc
|
|||
// Incoming message handling
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(DepositTxPublishedMessage tradeMessage, Address peerAddress) {
|
||||
private void handle(DepositTxPublishedMessage tradeMessage, NodeAddress peerNodeAddress) {
|
||||
stopTimeout();
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(peerAddress);
|
||||
processModel.setTempTradingPeerNodeAddress(peerNodeAddress);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(buyerAsOffererTrade,
|
||||
() -> handleTaskRunnerSuccess("handle DepositTxPublishedMessage"),
|
||||
|
@ -163,10 +163,10 @@ public class BuyerAsOffererProtocol extends TradeProtocol implements BuyerProtoc
|
|||
// Incoming message handling
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(FinalizePayoutTxRequest tradeMessage, Address peerAddress) {
|
||||
private void handle(FinalizePayoutTxRequest tradeMessage, NodeAddress peerNodeAddress) {
|
||||
log.debug("handle RequestFinalizePayoutTxMessage called");
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(peerAddress);
|
||||
processModel.setTempTradingPeerNodeAddress(peerNodeAddress);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(buyerAsOffererTrade,
|
||||
() -> {
|
||||
|
@ -191,11 +191,11 @@ public class BuyerAsOffererProtocol extends TradeProtocol implements BuyerProtoc
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, Address peerAddress) {
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, NodeAddress peerNodeAddress) {
|
||||
if (tradeMessage instanceof DepositTxPublishedMessage) {
|
||||
handle((DepositTxPublishedMessage) tradeMessage, peerAddress);
|
||||
handle((DepositTxPublishedMessage) tradeMessage, peerNodeAddress);
|
||||
} else if (tradeMessage instanceof FinalizePayoutTxRequest) {
|
||||
handle((FinalizePayoutTxRequest) tradeMessage, peerAddress);
|
||||
handle((FinalizePayoutTxRequest) tradeMessage, peerNodeAddress);
|
||||
} else {
|
||||
log.error("Incoming decrypted tradeMessage not supported. " + tradeMessage);
|
||||
}
|
||||
|
|
|
@ -18,8 +18,8 @@
|
|||
package io.bitsquare.trade.protocol.trade;
|
||||
|
||||
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
import io.bitsquare.trade.BuyerAsTakerTrade;
|
||||
import io.bitsquare.trade.Trade;
|
||||
|
@ -75,7 +75,7 @@ public class BuyerAsTakerProtocol extends TradeProtocol implements BuyerProtocol
|
|||
this.trade = trade;
|
||||
|
||||
if (message instanceof FinalizePayoutTxRequest)
|
||||
handle((FinalizePayoutTxRequest) message, ((MailboxMessage) message).getSenderAddress());
|
||||
handle((FinalizePayoutTxRequest) message, ((MailboxMessage) message).getSenderNodeAddress());
|
||||
}
|
||||
|
||||
|
||||
|
@ -106,10 +106,10 @@ public class BuyerAsTakerProtocol extends TradeProtocol implements BuyerProtocol
|
|||
// Incoming message handling
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(PublishDepositTxRequest tradeMessage, Address sender) {
|
||||
private void handle(PublishDepositTxRequest tradeMessage, NodeAddress sender) {
|
||||
stopTimeout();
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(buyerAsTakerTrade,
|
||||
() -> handleTaskRunnerSuccess("PublishDepositTxRequest"),
|
||||
|
@ -149,9 +149,9 @@ public class BuyerAsTakerProtocol extends TradeProtocol implements BuyerProtocol
|
|||
// Incoming message handling
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(FinalizePayoutTxRequest tradeMessage, Address sender) {
|
||||
private void handle(FinalizePayoutTxRequest tradeMessage, NodeAddress sender) {
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(buyerAsTakerTrade,
|
||||
() -> {
|
||||
|
@ -175,7 +175,7 @@ public class BuyerAsTakerProtocol extends TradeProtocol implements BuyerProtocol
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, Address sender) {
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, NodeAddress sender) {
|
||||
if (tradeMessage instanceof PublishDepositTxRequest) {
|
||||
handle((PublishDepositTxRequest) tradeMessage, sender);
|
||||
} else if (tradeMessage instanceof FinalizePayoutTxRequest) {
|
||||
|
|
|
@ -18,9 +18,9 @@
|
|||
package io.bitsquare.trade.protocol.trade;
|
||||
|
||||
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.trade.protocol.trade.messages.TradeMessage;
|
||||
|
||||
public interface OffererProtocol {
|
||||
void handleTakeOfferRequest(TradeMessage message, Address taker);
|
||||
void handleTakeOfferRequest(TradeMessage message, NodeAddress taker);
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@ import io.bitsquare.btc.data.RawInput;
|
|||
import io.bitsquare.common.crypto.KeyRing;
|
||||
import io.bitsquare.common.crypto.PubKeyRing;
|
||||
import io.bitsquare.common.taskrunner.Model;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.P2PService;
|
||||
import io.bitsquare.payment.PaymentAccountContractData;
|
||||
import io.bitsquare.trade.OffererTrade;
|
||||
|
@ -70,11 +70,11 @@ public class ProcessModel implements Model, Serializable {
|
|||
private byte[] payoutTxSignature;
|
||||
private Transaction takeOfferFeeTx;
|
||||
|
||||
private List<Address> takerAcceptedArbitratorAddresses;
|
||||
private List<NodeAddress> takerAcceptedArbitratorNodeAddresses;
|
||||
|
||||
// that is used to store temp. the peers address when we get an incoming message before the message is verified.
|
||||
// After successful verified we copy that over to the trade.tradingPeerAddress
|
||||
private Address tempTradingPeerAddress;
|
||||
private NodeAddress tempTradingPeerNodeAddress;
|
||||
private byte[] preparedDepositTx;
|
||||
private List<RawInput> rawInputs;
|
||||
private long changeOutputValue;
|
||||
|
@ -135,8 +135,8 @@ public class ProcessModel implements Model, Serializable {
|
|||
return tradeWalletService;
|
||||
}
|
||||
|
||||
public byte[] getArbitratorPubKey(Address arbitratorAddress) {
|
||||
return user.getAcceptedArbitratorByAddress(arbitratorAddress).getBtcPubKey();
|
||||
public byte[] getArbitratorPubKey(NodeAddress arbitratorNodeAddress) {
|
||||
return user.getAcceptedArbitratorByAddress(arbitratorNodeAddress).getBtcPubKey();
|
||||
}
|
||||
|
||||
public Offer getOffer() {
|
||||
|
@ -151,7 +151,7 @@ public class ProcessModel implements Model, Serializable {
|
|||
return user;
|
||||
}
|
||||
|
||||
public Address getMyAddress() {
|
||||
public NodeAddress getMyAddress() {
|
||||
return p2PService.getAddress();
|
||||
}
|
||||
|
||||
|
@ -234,20 +234,20 @@ public class ProcessModel implements Model, Serializable {
|
|||
return keyRing;
|
||||
}
|
||||
|
||||
public void setTakerAcceptedArbitratorAddresses(List<Address> takerAcceptedArbitratorAddresses) {
|
||||
this.takerAcceptedArbitratorAddresses = takerAcceptedArbitratorAddresses;
|
||||
public void setTakerAcceptedArbitratorNodeAddresses(List<NodeAddress> takerAcceptedArbitratorNodeAddresses) {
|
||||
this.takerAcceptedArbitratorNodeAddresses = takerAcceptedArbitratorNodeAddresses;
|
||||
}
|
||||
|
||||
public List<Address> getTakerAcceptedArbitratorAddresses() {
|
||||
return takerAcceptedArbitratorAddresses;
|
||||
public List<NodeAddress> getTakerAcceptedArbitratorNodeAddresses() {
|
||||
return takerAcceptedArbitratorNodeAddresses;
|
||||
}
|
||||
|
||||
public void setTempTradingPeerAddress(Address tempTradingPeerAddress) {
|
||||
this.tempTradingPeerAddress = tempTradingPeerAddress;
|
||||
public void setTempTradingPeerNodeAddress(NodeAddress tempTradingPeerNodeAddress) {
|
||||
this.tempTradingPeerNodeAddress = tempTradingPeerNodeAddress;
|
||||
}
|
||||
|
||||
public Address getTempTradingPeerAddress() {
|
||||
return tempTradingPeerAddress;
|
||||
public NodeAddress getTempTradingPeerNodeAddress() {
|
||||
return tempTradingPeerNodeAddress;
|
||||
}
|
||||
|
||||
public ArbitratorManager getArbitratorManager() {
|
||||
|
|
|
@ -18,8 +18,8 @@
|
|||
package io.bitsquare.trade.protocol.trade;
|
||||
|
||||
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
import io.bitsquare.trade.SellerAsOffererTrade;
|
||||
import io.bitsquare.trade.Trade;
|
||||
|
@ -75,14 +75,14 @@ public class SellerAsOffererProtocol extends TradeProtocol implements SellerProt
|
|||
public void doApplyMailboxMessage(Message message, Trade trade) {
|
||||
this.trade = trade;
|
||||
|
||||
Address peerAddress = ((MailboxMessage) message).getSenderAddress();
|
||||
NodeAddress peerNodeAddress = ((MailboxMessage) message).getSenderNodeAddress();
|
||||
if (message instanceof PayoutTxFinalizedMessage) {
|
||||
handle((PayoutTxFinalizedMessage) message, peerAddress);
|
||||
handle((PayoutTxFinalizedMessage) message, peerNodeAddress);
|
||||
} else {
|
||||
if (message instanceof FiatTransferStartedMessage) {
|
||||
handle((FiatTransferStartedMessage) message, peerAddress);
|
||||
handle((FiatTransferStartedMessage) message, peerNodeAddress);
|
||||
} else if (message instanceof DepositTxPublishedMessage) {
|
||||
handle((DepositTxPublishedMessage) message, peerAddress);
|
||||
handle((DepositTxPublishedMessage) message, peerNodeAddress);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -93,11 +93,11 @@ public class SellerAsOffererProtocol extends TradeProtocol implements SellerProt
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public void handleTakeOfferRequest(TradeMessage message, Address sender) {
|
||||
public void handleTakeOfferRequest(TradeMessage message, NodeAddress sender) {
|
||||
checkTradeId(processModel.getId(), message);
|
||||
checkArgument(message instanceof PayDepositRequest);
|
||||
processModel.setTradeMessage(message);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(sellerAsOffererTrade,
|
||||
() -> handleTaskRunnerSuccess("handleTakeOfferRequest"),
|
||||
|
@ -123,10 +123,10 @@ public class SellerAsOffererProtocol extends TradeProtocol implements SellerProt
|
|||
// Incoming message handling
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(DepositTxPublishedMessage tradeMessage, Address sender) {
|
||||
private void handle(DepositTxPublishedMessage tradeMessage, NodeAddress sender) {
|
||||
stopTimeout();
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(sellerAsOffererTrade,
|
||||
() -> handleTaskRunnerSuccess("DepositTxPublishedMessage"),
|
||||
|
@ -144,9 +144,9 @@ public class SellerAsOffererProtocol extends TradeProtocol implements SellerProt
|
|||
// After peer has started Fiat tx
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(FiatTransferStartedMessage tradeMessage, Address sender) {
|
||||
private void handle(FiatTransferStartedMessage tradeMessage, NodeAddress sender) {
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(sellerAsOffererTrade,
|
||||
() -> handleTaskRunnerSuccess("FiatTransferStartedMessage"),
|
||||
|
@ -178,9 +178,9 @@ public class SellerAsOffererProtocol extends TradeProtocol implements SellerProt
|
|||
taskRunner.run();
|
||||
}
|
||||
|
||||
private void handle(PayoutTxFinalizedMessage tradeMessage, Address sender) {
|
||||
private void handle(PayoutTxFinalizedMessage tradeMessage, NodeAddress sender) {
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(sellerAsOffererTrade,
|
||||
() -> {
|
||||
|
@ -202,7 +202,7 @@ public class SellerAsOffererProtocol extends TradeProtocol implements SellerProt
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, Address sender) {
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, NodeAddress sender) {
|
||||
if (tradeMessage instanceof DepositTxPublishedMessage) {
|
||||
handle((DepositTxPublishedMessage) tradeMessage, sender);
|
||||
} else if (tradeMessage instanceof FiatTransferStartedMessage) {
|
||||
|
|
|
@ -18,8 +18,8 @@
|
|||
package io.bitsquare.trade.protocol.trade;
|
||||
|
||||
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
import io.bitsquare.trade.SellerAsTakerTrade;
|
||||
import io.bitsquare.trade.Trade;
|
||||
|
@ -77,11 +77,11 @@ public class SellerAsTakerProtocol extends TradeProtocol implements SellerProtoc
|
|||
this.trade = trade;
|
||||
|
||||
if (message instanceof MailboxMessage) {
|
||||
Address peerAddress = ((MailboxMessage) message).getSenderAddress();
|
||||
NodeAddress peerNodeAddress = ((MailboxMessage) message).getSenderNodeAddress();
|
||||
if (message instanceof PayoutTxFinalizedMessage) {
|
||||
handle((PayoutTxFinalizedMessage) message, peerAddress);
|
||||
handle((PayoutTxFinalizedMessage) message, peerNodeAddress);
|
||||
} else if (message instanceof FiatTransferStartedMessage) {
|
||||
handle((FiatTransferStartedMessage) message, peerAddress);
|
||||
handle((FiatTransferStartedMessage) message, peerNodeAddress);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -114,11 +114,11 @@ public class SellerAsTakerProtocol extends TradeProtocol implements SellerProtoc
|
|||
// Incoming message handling
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(PublishDepositTxRequest tradeMessage, Address sender) {
|
||||
private void handle(PublishDepositTxRequest tradeMessage, NodeAddress sender) {
|
||||
log.debug("handle RequestPayDepositMessage");
|
||||
stopTimeout();
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(sellerAsTakerTrade,
|
||||
() -> handleTaskRunnerSuccess("PayDepositRequest"),
|
||||
|
@ -139,9 +139,9 @@ public class SellerAsTakerProtocol extends TradeProtocol implements SellerProtoc
|
|||
// After peer has started Fiat tx
|
||||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
private void handle(FiatTransferStartedMessage tradeMessage, Address sender) {
|
||||
private void handle(FiatTransferStartedMessage tradeMessage, NodeAddress sender) {
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(sellerAsTakerTrade,
|
||||
() -> handleTaskRunnerSuccess("FiatTransferStartedMessage"),
|
||||
|
@ -173,10 +173,10 @@ public class SellerAsTakerProtocol extends TradeProtocol implements SellerProtoc
|
|||
taskRunner.run();
|
||||
}
|
||||
|
||||
private void handle(PayoutTxFinalizedMessage tradeMessage, Address sender) {
|
||||
private void handle(PayoutTxFinalizedMessage tradeMessage, NodeAddress sender) {
|
||||
stopTimeout();
|
||||
processModel.setTradeMessage(tradeMessage);
|
||||
processModel.setTempTradingPeerAddress(sender);
|
||||
processModel.setTempTradingPeerNodeAddress(sender);
|
||||
|
||||
TradeTaskRunner taskRunner = new TradeTaskRunner(sellerAsTakerTrade,
|
||||
() -> {
|
||||
|
@ -199,7 +199,7 @@ public class SellerAsTakerProtocol extends TradeProtocol implements SellerProtoc
|
|||
///////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, Address sender) {
|
||||
protected void doHandleDecryptedMessage(TradeMessage tradeMessage, NodeAddress sender) {
|
||||
if (tradeMessage instanceof PublishDepositTxRequest) {
|
||||
handle((PublishDepositTxRequest) tradeMessage, sender);
|
||||
} else if (tradeMessage instanceof FiatTransferStartedMessage) {
|
||||
|
|
|
@ -19,8 +19,8 @@ package io.bitsquare.trade.protocol.trade;
|
|||
|
||||
import io.bitsquare.common.UserThread;
|
||||
import io.bitsquare.common.crypto.PubKeyRing;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.Message;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.DecryptedMailListener;
|
||||
import io.bitsquare.p2p.messaging.DecryptedMsgWithPubKey;
|
||||
import io.bitsquare.trade.OffererTrade;
|
||||
|
@ -102,7 +102,7 @@ public abstract class TradeProtocol {
|
|||
|
||||
protected abstract void doApplyMailboxMessage(Message message, Trade trade);
|
||||
|
||||
protected abstract void doHandleDecryptedMessage(TradeMessage tradeMessage, Address peerAddress);
|
||||
protected abstract void doHandleDecryptedMessage(TradeMessage tradeMessage, NodeAddress peerNodeAddress);
|
||||
|
||||
public void checkPayoutTxTimeLock(Trade trade) {
|
||||
this.trade = trade;
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade.protocol.trade.messages;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
|
||||
import javax.annotation.concurrent.Immutable;
|
||||
|
@ -30,17 +30,17 @@ public final class DepositTxPublishedMessage extends TradeMessage implements Mai
|
|||
private static final long serialVersionUID = Version.NETWORK_PROTOCOL_VERSION;
|
||||
|
||||
public final byte[] depositTx;
|
||||
private final Address senderAddress;
|
||||
private final NodeAddress senderNodeAddress;
|
||||
|
||||
public DepositTxPublishedMessage(String tradeId, byte[] depositTx, Address senderAddress) {
|
||||
public DepositTxPublishedMessage(String tradeId, byte[] depositTx, NodeAddress senderNodeAddress) {
|
||||
super(tradeId);
|
||||
this.depositTx = depositTx;
|
||||
this.senderAddress = senderAddress;
|
||||
this.senderNodeAddress = senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return senderAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -52,7 +52,7 @@ public final class DepositTxPublishedMessage extends TradeMessage implements Mai
|
|||
DepositTxPublishedMessage that = (DepositTxPublishedMessage) o;
|
||||
|
||||
if (!Arrays.equals(depositTx, that.depositTx)) return false;
|
||||
return !(senderAddress != null ? !senderAddress.equals(that.senderAddress) : that.senderAddress != null);
|
||||
return !(senderNodeAddress != null ? !senderNodeAddress.equals(that.senderNodeAddress) : that.senderNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -60,7 +60,7 @@ public final class DepositTxPublishedMessage extends TradeMessage implements Mai
|
|||
public int hashCode() {
|
||||
int result = super.hashCode();
|
||||
result = 31 * result + (depositTx != null ? Arrays.hashCode(depositTx) : 0);
|
||||
result = 31 * result + (senderAddress != null ? senderAddress.hashCode() : 0);
|
||||
result = 31 * result + (senderNodeAddress != null ? senderNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade.protocol.trade.messages;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
|
||||
import javax.annotation.concurrent.Immutable;
|
||||
|
@ -29,17 +29,17 @@ public final class FiatTransferStartedMessage extends TradeMessage implements Ma
|
|||
private static final long serialVersionUID = Version.NETWORK_PROTOCOL_VERSION;
|
||||
|
||||
public final String buyerPayoutAddress;
|
||||
private final Address senderAddress;
|
||||
private final NodeAddress senderNodeAddress;
|
||||
|
||||
public FiatTransferStartedMessage(String tradeId, String buyerPayoutAddress, Address senderAddress) {
|
||||
public FiatTransferStartedMessage(String tradeId, String buyerPayoutAddress, NodeAddress senderNodeAddress) {
|
||||
super(tradeId);
|
||||
this.buyerPayoutAddress = buyerPayoutAddress;
|
||||
this.senderAddress = senderAddress;
|
||||
this.senderNodeAddress = senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return senderAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -52,7 +52,7 @@ public final class FiatTransferStartedMessage extends TradeMessage implements Ma
|
|||
|
||||
if (buyerPayoutAddress != null ? !buyerPayoutAddress.equals(that.buyerPayoutAddress) : that.buyerPayoutAddress != null)
|
||||
return false;
|
||||
return !(senderAddress != null ? !senderAddress.equals(that.senderAddress) : that.senderAddress != null);
|
||||
return !(senderNodeAddress != null ? !senderNodeAddress.equals(that.senderNodeAddress) : that.senderNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -60,7 +60,7 @@ public final class FiatTransferStartedMessage extends TradeMessage implements Ma
|
|||
public int hashCode() {
|
||||
int result = super.hashCode();
|
||||
result = 31 * result + (buyerPayoutAddress != null ? buyerPayoutAddress.hashCode() : 0);
|
||||
result = 31 * result + (senderAddress != null ? senderAddress.hashCode() : 0);
|
||||
result = 31 * result + (senderNodeAddress != null ? senderNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade.protocol.trade.messages;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
|
||||
import javax.annotation.concurrent.Immutable;
|
||||
|
@ -32,23 +32,23 @@ public final class FinalizePayoutTxRequest extends TradeMessage implements Mailb
|
|||
public final byte[] sellerSignature;
|
||||
public final String sellerPayoutAddress;
|
||||
public final long lockTime;
|
||||
private final Address senderAddress;
|
||||
private final NodeAddress senderNodeAddress;
|
||||
|
||||
public FinalizePayoutTxRequest(String tradeId,
|
||||
byte[] sellerSignature,
|
||||
String sellerPayoutAddress,
|
||||
long lockTime,
|
||||
Address senderAddress) {
|
||||
NodeAddress senderNodeAddress) {
|
||||
super(tradeId);
|
||||
this.sellerSignature = sellerSignature;
|
||||
this.sellerPayoutAddress = sellerPayoutAddress;
|
||||
this.lockTime = lockTime;
|
||||
this.senderAddress = senderAddress;
|
||||
this.senderNodeAddress = senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return senderAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -63,7 +63,7 @@ public final class FinalizePayoutTxRequest extends TradeMessage implements Mailb
|
|||
if (!Arrays.equals(sellerSignature, that.sellerSignature)) return false;
|
||||
if (sellerPayoutAddress != null ? !sellerPayoutAddress.equals(that.sellerPayoutAddress) : that.sellerPayoutAddress != null)
|
||||
return false;
|
||||
return !(senderAddress != null ? !senderAddress.equals(that.senderAddress) : that.senderAddress != null);
|
||||
return !(senderNodeAddress != null ? !senderNodeAddress.equals(that.senderNodeAddress) : that.senderNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -73,7 +73,7 @@ public final class FinalizePayoutTxRequest extends TradeMessage implements Mailb
|
|||
result = 31 * result + (sellerSignature != null ? Arrays.hashCode(sellerSignature) : 0);
|
||||
result = 31 * result + (sellerPayoutAddress != null ? sellerPayoutAddress.hashCode() : 0);
|
||||
result = 31 * result + (int) (lockTime ^ (lockTime >>> 32));
|
||||
result = 31 * result + (senderAddress != null ? senderAddress.hashCode() : 0);
|
||||
result = 31 * result + (senderNodeAddress != null ? senderNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.messages;
|
|||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.btc.data.RawInput;
|
||||
import io.bitsquare.common.crypto.PubKeyRing;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
import io.bitsquare.payment.PaymentAccountContractData;
|
||||
|
||||
|
@ -43,11 +43,11 @@ public final class PayDepositRequest extends TradeMessage implements MailboxMess
|
|||
public final PaymentAccountContractData takerPaymentAccountContractData;
|
||||
public final String takerAccountId;
|
||||
public final String takeOfferFeeTxId;
|
||||
public final List<Address> acceptedArbitratorAddresses;
|
||||
public final Address arbitratorAddress;
|
||||
private final Address senderAddress;
|
||||
public final List<NodeAddress> acceptedArbitratorNodeAddresses;
|
||||
public final NodeAddress arbitratorNodeAddress;
|
||||
private final NodeAddress senderNodeAddress;
|
||||
|
||||
public PayDepositRequest(Address senderAddress,
|
||||
public PayDepositRequest(NodeAddress senderNodeAddress,
|
||||
String tradeId,
|
||||
long tradeAmount,
|
||||
List<RawInput> rawInputs,
|
||||
|
@ -59,10 +59,10 @@ public final class PayDepositRequest extends TradeMessage implements MailboxMess
|
|||
PaymentAccountContractData takerPaymentAccountContractData,
|
||||
String takerAccountId,
|
||||
String takeOfferFeeTxId,
|
||||
List<Address> acceptedArbitratorAddresses,
|
||||
Address arbitratorAddress) {
|
||||
List<NodeAddress> acceptedArbitratorNodeAddresses,
|
||||
NodeAddress arbitratorNodeAddress) {
|
||||
super(tradeId);
|
||||
this.senderAddress = senderAddress;
|
||||
this.senderNodeAddress = senderNodeAddress;
|
||||
this.tradeAmount = tradeAmount;
|
||||
this.rawInputs = rawInputs;
|
||||
this.changeOutputValue = changeOutputValue;
|
||||
|
@ -73,13 +73,13 @@ public final class PayDepositRequest extends TradeMessage implements MailboxMess
|
|||
this.takerPaymentAccountContractData = takerPaymentAccountContractData;
|
||||
this.takerAccountId = takerAccountId;
|
||||
this.takeOfferFeeTxId = takeOfferFeeTxId;
|
||||
this.acceptedArbitratorAddresses = acceptedArbitratorAddresses;
|
||||
this.arbitratorAddress = arbitratorAddress;
|
||||
this.acceptedArbitratorNodeAddresses = acceptedArbitratorNodeAddresses;
|
||||
this.arbitratorNodeAddress = arbitratorNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return senderAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -106,11 +106,11 @@ public final class PayDepositRequest extends TradeMessage implements MailboxMess
|
|||
return false;
|
||||
if (takeOfferFeeTxId != null ? !takeOfferFeeTxId.equals(that.takeOfferFeeTxId) : that.takeOfferFeeTxId != null)
|
||||
return false;
|
||||
if (acceptedArbitratorAddresses != null ? !acceptedArbitratorAddresses.equals(that.acceptedArbitratorAddresses) : that.acceptedArbitratorAddresses != null)
|
||||
if (acceptedArbitratorNodeAddresses != null ? !acceptedArbitratorNodeAddresses.equals(that.acceptedArbitratorNodeAddresses) : that.acceptedArbitratorNodeAddresses != null)
|
||||
return false;
|
||||
if (arbitratorAddress != null ? !arbitratorAddress.equals(that.arbitratorAddress) : that.arbitratorAddress != null)
|
||||
if (arbitratorNodeAddress != null ? !arbitratorNodeAddress.equals(that.arbitratorNodeAddress) : that.arbitratorNodeAddress != null)
|
||||
return false;
|
||||
return !(senderAddress != null ? !senderAddress.equals(that.senderAddress) : that.senderAddress != null);
|
||||
return !(senderNodeAddress != null ? !senderNodeAddress.equals(that.senderNodeAddress) : that.senderNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -127,9 +127,9 @@ public final class PayDepositRequest extends TradeMessage implements MailboxMess
|
|||
result = 31 * result + (takerPaymentAccountContractData != null ? takerPaymentAccountContractData.hashCode() : 0);
|
||||
result = 31 * result + (takerAccountId != null ? takerAccountId.hashCode() : 0);
|
||||
result = 31 * result + (takeOfferFeeTxId != null ? takeOfferFeeTxId.hashCode() : 0);
|
||||
result = 31 * result + (acceptedArbitratorAddresses != null ? acceptedArbitratorAddresses.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorAddress != null ? arbitratorAddress.hashCode() : 0);
|
||||
result = 31 * result + (senderAddress != null ? senderAddress.hashCode() : 0);
|
||||
result = 31 * result + (acceptedArbitratorNodeAddresses != null ? acceptedArbitratorNodeAddresses.hashCode() : 0);
|
||||
result = 31 * result + (arbitratorNodeAddress != null ? arbitratorNodeAddress.hashCode() : 0);
|
||||
result = 31 * result + (senderNodeAddress != null ? senderNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
package io.bitsquare.trade.protocol.trade.messages;
|
||||
|
||||
import io.bitsquare.app.Version;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.p2p.messaging.MailboxMessage;
|
||||
|
||||
import javax.annotation.concurrent.Immutable;
|
||||
|
@ -30,17 +30,17 @@ public final class PayoutTxFinalizedMessage extends TradeMessage implements Mail
|
|||
private static final long serialVersionUID = Version.NETWORK_PROTOCOL_VERSION;
|
||||
|
||||
public final byte[] payoutTx;
|
||||
private final Address senderAddress;
|
||||
private final NodeAddress senderNodeAddress;
|
||||
|
||||
public PayoutTxFinalizedMessage(String tradeId, byte[] payoutTx, Address senderAddress) {
|
||||
public PayoutTxFinalizedMessage(String tradeId, byte[] payoutTx, NodeAddress senderNodeAddress) {
|
||||
super(tradeId);
|
||||
this.payoutTx = payoutTx;
|
||||
this.senderAddress = senderAddress;
|
||||
this.senderNodeAddress = senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Address getSenderAddress() {
|
||||
return senderAddress;
|
||||
public NodeAddress getSenderNodeAddress() {
|
||||
return senderNodeAddress;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -52,7 +52,7 @@ public final class PayoutTxFinalizedMessage extends TradeMessage implements Mail
|
|||
PayoutTxFinalizedMessage that = (PayoutTxFinalizedMessage) o;
|
||||
|
||||
if (!Arrays.equals(payoutTx, that.payoutTx)) return false;
|
||||
return !(senderAddress != null ? !senderAddress.equals(that.senderAddress) : that.senderAddress != null);
|
||||
return !(senderNodeAddress != null ? !senderNodeAddress.equals(that.senderNodeAddress) : that.senderNodeAddress != null);
|
||||
|
||||
}
|
||||
|
||||
|
@ -60,7 +60,7 @@ public final class PayoutTxFinalizedMessage extends TradeMessage implements Mail
|
|||
public int hashCode() {
|
||||
int result = super.hashCode();
|
||||
result = 31 * result + (payoutTx != null ? Arrays.hashCode(payoutTx) : 0);
|
||||
result = 31 * result + (senderAddress != null ? senderAddress.hashCode() : 0);
|
||||
result = 31 * result + (senderNodeAddress != null ? senderNodeAddress.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -62,7 +62,7 @@ public class CreateAndSignDepositTxAsBuyer extends TradeTask {
|
|||
processModel.getAddressEntry(),
|
||||
processModel.getTradeWalletPubKey(),
|
||||
processModel.tradingPeer.getTradeWalletPubKey(),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorAddress()));
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorNodeAddress()));
|
||||
|
||||
processModel.setPreparedDepositTx(result.depositTransaction);
|
||||
processModel.setRawInputs(result.rawOffererInputs);
|
||||
|
|
|
@ -50,7 +50,7 @@ public class ProcessFinalizePayoutTxRequest extends TradeTask {
|
|||
trade.setState(Trade.State.FIAT_PAYMENT_RECEIPT_MSG_RECEIVED);
|
||||
|
||||
// update to the latest peer address of our peer if the message is correct
|
||||
trade.setTradingPeerAddress(processModel.getTempTradingPeerAddress());
|
||||
trade.setTradingPeerNodeAddress(processModel.getTempTradingPeerNodeAddress());
|
||||
|
||||
complete();
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -38,7 +38,7 @@ public class SendFiatTransferStartedMessage extends TradeTask {
|
|||
runInterceptHook();
|
||||
|
||||
processModel.getP2PService().sendEncryptedMailboxMessage(
|
||||
trade.getTradingPeerAddress(),
|
||||
trade.getTradingPeerNodeAddress(),
|
||||
processModel.tradingPeer.getPubKeyRing(),
|
||||
new FiatTransferStartedMessage(
|
||||
processModel.getId(),
|
||||
|
|
|
@ -38,7 +38,7 @@ public class SendPayoutTxFinalizedMessage extends TradeTask {
|
|||
runInterceptHook();
|
||||
if (trade.getPayoutTx() != null) {
|
||||
processModel.getP2PService().sendEncryptedMailboxMessage(
|
||||
trade.getTradingPeerAddress(),
|
||||
trade.getTradingPeerNodeAddress(),
|
||||
processModel.tradingPeer.getPubKeyRing(),
|
||||
new PayoutTxFinalizedMessage(
|
||||
processModel.getId(),
|
||||
|
|
|
@ -53,7 +53,7 @@ public class SignAndFinalizePayoutTx extends TradeTask {
|
|||
trade.getLockTimeAsBlockHeight(),
|
||||
processModel.getTradeWalletPubKey(),
|
||||
processModel.tradingPeer.getTradeWalletPubKey(),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorAddress())
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorNodeAddress())
|
||||
);
|
||||
|
||||
trade.setPayoutTx(transaction);
|
||||
|
|
|
@ -57,7 +57,7 @@ public class SignAndPublishDepositTxAsBuyer extends TradeTask {
|
|||
processModel.tradingPeer.getRawInputs(),
|
||||
processModel.getTradeWalletPubKey(),
|
||||
processModel.tradingPeer.getTradeWalletPubKey(),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorAddress()),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorNodeAddress()),
|
||||
new FutureCallback<Transaction>() {
|
||||
@Override
|
||||
public void onSuccess(Transaction transaction) {
|
||||
|
|
|
@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.tasks.offerer;
|
|||
import io.bitsquare.common.crypto.Sig;
|
||||
import io.bitsquare.common.taskrunner.TaskRunner;
|
||||
import io.bitsquare.common.util.Utilities;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.payment.PaymentAccountContractData;
|
||||
import io.bitsquare.trade.BuyerAsOffererTrade;
|
||||
import io.bitsquare.trade.Contract;
|
||||
|
@ -50,18 +50,18 @@ public class CreateAndSignContract extends TradeTask {
|
|||
PaymentAccountContractData takerPaymentAccountContractData = taker.getPaymentAccountContractData();
|
||||
boolean isBuyerOffererAndSellerTaker = trade instanceof BuyerAsOffererTrade;
|
||||
|
||||
Address buyerAddress = isBuyerOffererAndSellerTaker ? processModel.getMyAddress() : processModel.getTempTradingPeerAddress();
|
||||
Address sellerAddress = isBuyerOffererAndSellerTaker ? processModel.getTempTradingPeerAddress() : processModel.getMyAddress();
|
||||
NodeAddress buyerNodeAddress = isBuyerOffererAndSellerTaker ? processModel.getMyAddress() : processModel.getTempTradingPeerNodeAddress();
|
||||
NodeAddress sellerNodeAddress = isBuyerOffererAndSellerTaker ? processModel.getTempTradingPeerNodeAddress() : processModel.getMyAddress();
|
||||
log.debug("isBuyerOffererAndSellerTaker " + isBuyerOffererAndSellerTaker);
|
||||
log.debug("buyerAddress " + buyerAddress);
|
||||
log.debug("sellerAddress " + sellerAddress);
|
||||
log.debug("buyerAddress " + buyerNodeAddress);
|
||||
log.debug("sellerAddress " + sellerNodeAddress);
|
||||
Contract contract = new Contract(
|
||||
processModel.getOffer(),
|
||||
trade.getTradeAmount(),
|
||||
processModel.getTakeOfferFeeTxId(),
|
||||
buyerAddress,
|
||||
sellerAddress,
|
||||
trade.getArbitratorAddress(),
|
||||
buyerNodeAddress,
|
||||
sellerNodeAddress,
|
||||
trade.getArbitratorNodeAddress(),
|
||||
isBuyerOffererAndSellerTaker,
|
||||
processModel.getAccountId(),
|
||||
taker.getAccountId(),
|
||||
|
|
|
@ -55,7 +55,7 @@ public class ProcessDepositTxPublishedMessage extends TradeTask {
|
|||
processModel.getOpenOfferManager().closeOpenOffer(trade.getOffer());
|
||||
|
||||
// update to the latest peer address of our peer if the message is correct
|
||||
trade.setTradingPeerAddress(processModel.getTempTradingPeerAddress());
|
||||
trade.setTradingPeerNodeAddress(processModel.getTempTradingPeerNodeAddress());
|
||||
|
||||
complete();
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -72,15 +72,15 @@ public class ProcessPayDepositRequest extends TradeTask {
|
|||
|
||||
processModel.tradingPeer.setAccountId(nonEmptyStringOf(payDepositRequest.takerAccountId));
|
||||
processModel.setTakeOfferFeeTxId(nonEmptyStringOf(payDepositRequest.takeOfferFeeTxId));
|
||||
processModel.setTakerAcceptedArbitratorAddresses(checkNotNull(payDepositRequest.acceptedArbitratorAddresses));
|
||||
if (payDepositRequest.acceptedArbitratorAddresses.size() < 1)
|
||||
processModel.setTakerAcceptedArbitratorNodeAddresses(checkNotNull(payDepositRequest.acceptedArbitratorNodeAddresses));
|
||||
if (payDepositRequest.acceptedArbitratorNodeAddresses.size() < 1)
|
||||
failed("acceptedArbitratorNames size must be at least 1");
|
||||
trade.setArbitratorAddress(checkNotNull(payDepositRequest.arbitratorAddress));
|
||||
trade.setArbitratorNodeAddress(checkNotNull(payDepositRequest.arbitratorNodeAddress));
|
||||
checkArgument(payDepositRequest.tradeAmount > 0);
|
||||
trade.setTradeAmount(Coin.valueOf(payDepositRequest.tradeAmount));
|
||||
|
||||
// update to the latest peer address of our peer if the payDepositRequest is correct
|
||||
trade.setTradingPeerAddress(processModel.getTempTradingPeerAddress());
|
||||
trade.setTradingPeerNodeAddress(processModel.getTempTradingPeerNodeAddress());
|
||||
|
||||
complete();
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -52,7 +52,7 @@ public class SendPublishDepositTxRequest extends TradeTask {
|
|||
);
|
||||
|
||||
processModel.getP2PService().sendEncryptedMailMessage(
|
||||
trade.getTradingPeerAddress(),
|
||||
trade.getTradingPeerNodeAddress(),
|
||||
processModel.tradingPeer.getPubKeyRing(),
|
||||
tradeMessage,
|
||||
new SendMailMessageListener() {
|
||||
|
|
|
@ -36,7 +36,7 @@ public class VerifyArbitrationSelection extends TradeTask {
|
|||
try {
|
||||
runInterceptHook();
|
||||
|
||||
if (trade.getArbitratorAddress().equals(ArbitrationSelectionRule.select(processModel.getTakerAcceptedArbitratorAddresses(),
|
||||
if (trade.getArbitratorNodeAddress().equals(ArbitrationSelectionRule.select(processModel.getTakerAcceptedArbitratorNodeAddresses(),
|
||||
processModel.getOffer())))
|
||||
complete();
|
||||
else
|
||||
|
|
|
@ -62,7 +62,7 @@ public class CreateAndSignDepositTxAsSeller extends TradeTask {
|
|||
processModel.getAddressEntry(),
|
||||
processModel.tradingPeer.getTradeWalletPubKey(),
|
||||
processModel.getTradeWalletPubKey(),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorAddress()));
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorNodeAddress()));
|
||||
|
||||
processModel.setPreparedDepositTx(result.depositTransaction);
|
||||
processModel.setRawInputs(result.rawOffererInputs);
|
||||
|
|
|
@ -49,7 +49,7 @@ public class ProcessFiatTransferStartedMessage extends TradeTask {
|
|||
trade.setState(Trade.State.FIAT_PAYMENT_STARTED_MSG_RECEIVED);
|
||||
|
||||
// update to the latest peer address of our peer if the message is correct
|
||||
trade.setTradingPeerAddress(processModel.getTempTradingPeerAddress());
|
||||
trade.setTradingPeerNodeAddress(processModel.getTempTradingPeerNodeAddress());
|
||||
|
||||
complete();
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -49,7 +49,7 @@ public class ProcessPayoutTxFinalizedMessage extends TradeTask {
|
|||
trade.setState(Trade.State.PAYOUT_TX_RECEIVED);
|
||||
|
||||
// update to the latest peer address of our peer if the message is correct
|
||||
trade.setTradingPeerAddress(processModel.getTempTradingPeerAddress());
|
||||
trade.setTradingPeerNodeAddress(processModel.getTempTradingPeerNodeAddress());
|
||||
|
||||
complete();
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -36,7 +36,7 @@ public class SendFinalizePayoutTxRequest extends TradeTask {
|
|||
protected void run() {
|
||||
try {
|
||||
runInterceptHook();
|
||||
if (trade.getTradingPeerAddress() != null) {
|
||||
if (trade.getTradingPeerNodeAddress() != null) {
|
||||
FinalizePayoutTxRequest message = new FinalizePayoutTxRequest(
|
||||
processModel.getId(),
|
||||
processModel.getPayoutTxSignature(),
|
||||
|
@ -46,7 +46,7 @@ public class SendFinalizePayoutTxRequest extends TradeTask {
|
|||
);
|
||||
|
||||
processModel.getP2PService().sendEncryptedMailboxMessage(
|
||||
trade.getTradingPeerAddress(),
|
||||
trade.getTradingPeerNodeAddress(),
|
||||
processModel.tradingPeer.getPubKeyRing(),
|
||||
message,
|
||||
new SendMailboxMessageListener() {
|
||||
|
@ -72,7 +72,7 @@ public class SendFinalizePayoutTxRequest extends TradeTask {
|
|||
}
|
||||
);
|
||||
} else {
|
||||
log.error("trade.getTradingPeerAddress() = " + trade.getTradingPeerAddress());
|
||||
log.error("trade.getTradingPeerAddress() = " + trade.getTradingPeerNodeAddress());
|
||||
failed("A needed dependency is null");
|
||||
}
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -55,7 +55,7 @@ public class SignAndPublishDepositTxAsSeller extends TradeTask {
|
|||
processModel.getRawInputs(),
|
||||
processModel.tradingPeer.getTradeWalletPubKey(),
|
||||
processModel.getTradeWalletPubKey(),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorAddress()),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorNodeAddress()),
|
||||
new FutureCallback<Transaction>() {
|
||||
@Override
|
||||
public void onSuccess(Transaction transaction) {
|
||||
|
|
|
@ -61,7 +61,7 @@ public class SignPayoutTx extends TradeTask {
|
|||
lockTimeAsBlockHeight,
|
||||
processModel.tradingPeer.getTradeWalletPubKey(),
|
||||
processModel.getTradeWalletPubKey(),
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorAddress()));
|
||||
processModel.getArbitratorPubKey(trade.getArbitratorNodeAddress()));
|
||||
|
||||
processModel.setPayoutTxSignature(payoutTxSignature);
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.tasks.taker;
|
|||
import io.bitsquare.arbitration.Arbitrator;
|
||||
import io.bitsquare.btc.FeePolicy;
|
||||
import io.bitsquare.common.taskrunner.TaskRunner;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.trade.Trade;
|
||||
import io.bitsquare.trade.protocol.trade.ArbitrationSelectionRule;
|
||||
import io.bitsquare.trade.protocol.trade.tasks.TradeTask;
|
||||
|
@ -42,9 +42,9 @@ public class CreateTakeOfferFeeTx extends TradeTask {
|
|||
runInterceptHook();
|
||||
|
||||
User user = processModel.getUser();
|
||||
Address selectedArbitratorAddress = ArbitrationSelectionRule.select(user.getAcceptedArbitratorAddresses(), processModel.getOffer());
|
||||
log.debug("selectedArbitratorAddress " + selectedArbitratorAddress);
|
||||
Arbitrator selectedArbitrator = user.getAcceptedArbitratorByAddress(selectedArbitratorAddress);
|
||||
NodeAddress selectedArbitratorNodeAddress = ArbitrationSelectionRule.select(user.getAcceptedArbitratorAddresses(), processModel.getOffer());
|
||||
log.debug("selectedArbitratorAddress " + selectedArbitratorNodeAddress);
|
||||
Arbitrator selectedArbitrator = user.getAcceptedArbitratorByAddress(selectedArbitratorNodeAddress);
|
||||
Transaction createTakeOfferFeeTx = processModel.getTradeWalletService().createTradingFeeTx(
|
||||
processModel.getAddressEntry(),
|
||||
FeePolicy.getTakeOfferFee(),
|
||||
|
|
|
@ -79,7 +79,7 @@ public class ProcessPublishDepositTxRequest extends TradeTask {
|
|||
}
|
||||
|
||||
// update to the latest peer address of our peer if the message is correct
|
||||
trade.setTradingPeerAddress(processModel.getTempTradingPeerAddress());
|
||||
trade.setTradingPeerNodeAddress(processModel.getTempTradingPeerNodeAddress());
|
||||
|
||||
complete();
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -36,7 +36,7 @@ public class SelectArbitrator extends TradeTask {
|
|||
try {
|
||||
runInterceptHook();
|
||||
|
||||
trade.setArbitratorAddress(ArbitrationSelectionRule.select(processModel.getUser().getAcceptedArbitratorAddresses(), processModel.getOffer()));
|
||||
trade.setArbitratorNodeAddress(ArbitrationSelectionRule.select(processModel.getUser().getAcceptedArbitratorAddresses(), processModel.getOffer()));
|
||||
|
||||
complete();
|
||||
} catch (Throwable t) {
|
||||
|
|
|
@ -42,7 +42,7 @@ public class SendDepositTxPublishedMessage extends TradeTask {
|
|||
processModel.getMyAddress());
|
||||
|
||||
processModel.getP2PService().sendEncryptedMailboxMessage(
|
||||
trade.getTradingPeerAddress(),
|
||||
trade.getTradingPeerNodeAddress(),
|
||||
processModel.tradingPeer.getPubKeyRing(),
|
||||
tradeMessage,
|
||||
new SendMailboxMessageListener() {
|
||||
|
|
|
@ -51,11 +51,11 @@ public class SendPayDepositRequest extends TradeTask {
|
|||
processModel.getAccountId(),
|
||||
processModel.getTakeOfferFeeTx().getHashAsString(),
|
||||
processModel.getUser().getAcceptedArbitratorAddresses(),
|
||||
trade.getArbitratorAddress()
|
||||
trade.getArbitratorNodeAddress()
|
||||
);
|
||||
|
||||
processModel.getP2PService().sendEncryptedMailboxMessage(
|
||||
trade.getTradingPeerAddress(),
|
||||
trade.getTradingPeerNodeAddress(),
|
||||
processModel.tradingPeer.getPubKeyRing(),
|
||||
payDepositRequest,
|
||||
new SendMailboxMessageListener() {
|
||||
|
|
|
@ -20,7 +20,7 @@ package io.bitsquare.trade.protocol.trade.tasks.taker;
|
|||
import io.bitsquare.common.crypto.Sig;
|
||||
import io.bitsquare.common.taskrunner.TaskRunner;
|
||||
import io.bitsquare.common.util.Utilities;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.payment.PaymentAccountContractData;
|
||||
import io.bitsquare.trade.Contract;
|
||||
import io.bitsquare.trade.SellerAsTakerTrade;
|
||||
|
@ -48,19 +48,19 @@ public class VerifyAndSignContract extends TradeTask {
|
|||
PaymentAccountContractData takerPaymentAccountContractData = processModel.getPaymentAccountContractData(trade);
|
||||
|
||||
boolean isBuyerOffererAndSellerTaker = trade instanceof SellerAsTakerTrade;
|
||||
Address buyerAddress = isBuyerOffererAndSellerTaker ? processModel.getTempTradingPeerAddress() : processModel.getMyAddress();
|
||||
Address sellerAddress = isBuyerOffererAndSellerTaker ? processModel.getMyAddress() : processModel.getTempTradingPeerAddress();
|
||||
NodeAddress buyerNodeAddress = isBuyerOffererAndSellerTaker ? processModel.getTempTradingPeerNodeAddress() : processModel.getMyAddress();
|
||||
NodeAddress sellerNodeAddress = isBuyerOffererAndSellerTaker ? processModel.getMyAddress() : processModel.getTempTradingPeerNodeAddress();
|
||||
log.debug("isBuyerOffererAndSellerTaker " + isBuyerOffererAndSellerTaker);
|
||||
log.debug("buyerAddress " + buyerAddress);
|
||||
log.debug("sellerAddress " + sellerAddress);
|
||||
log.debug("buyerAddress " + buyerNodeAddress);
|
||||
log.debug("sellerAddress " + sellerNodeAddress);
|
||||
|
||||
Contract contract = new Contract(
|
||||
processModel.getOffer(),
|
||||
trade.getTradeAmount(),
|
||||
processModel.getTakeOfferFeeTx().getHashAsString(),
|
||||
buyerAddress,
|
||||
sellerAddress,
|
||||
trade.getArbitratorAddress(),
|
||||
buyerNodeAddress,
|
||||
sellerNodeAddress,
|
||||
trade.getArbitratorNodeAddress(),
|
||||
isBuyerOffererAndSellerTaker,
|
||||
offerer.getAccountId(),
|
||||
processModel.getAccountId(),
|
||||
|
|
|
@ -23,7 +23,7 @@ import io.bitsquare.arbitration.Arbitrator;
|
|||
import io.bitsquare.common.crypto.KeyRing;
|
||||
import io.bitsquare.locale.LanguageUtil;
|
||||
import io.bitsquare.locale.TradeCurrency;
|
||||
import io.bitsquare.p2p.Address;
|
||||
import io.bitsquare.p2p.NodeAddress;
|
||||
import io.bitsquare.payment.PaymentAccount;
|
||||
import io.bitsquare.storage.Storage;
|
||||
import javafx.beans.property.ObjectProperty;
|
||||
|
@ -250,8 +250,8 @@ public class User implements Serializable {
|
|||
return acceptedArbitrators;
|
||||
}
|
||||
|
||||
public List<Address> getAcceptedArbitratorAddresses() {
|
||||
return acceptedArbitrators.stream().map(Arbitrator::getArbitratorAddress).collect(Collectors.toList());
|
||||
public List<NodeAddress> getAcceptedArbitratorAddresses() {
|
||||
return acceptedArbitrators.stream().map(Arbitrator::getArbitratorNodeAddress).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public List<String> getAcceptedLanguageLocaleCodes() {
|
||||
|
@ -269,8 +269,8 @@ public class User implements Serializable {
|
|||
return receiverAddresses;
|
||||
}*/
|
||||
|
||||
public Arbitrator getAcceptedArbitratorByAddress(Address address) {
|
||||
Optional<Arbitrator> arbitratorOptional = acceptedArbitrators.stream().filter(e -> e.getArbitratorAddress().equals(address)).findFirst();
|
||||
public Arbitrator getAcceptedArbitratorByAddress(NodeAddress nodeAddress) {
|
||||
Optional<Arbitrator> arbitratorOptional = acceptedArbitrators.stream().filter(e -> e.getArbitratorNodeAddress().equals(nodeAddress)).findFirst();
|
||||
if (arbitratorOptional.isPresent())
|
||||
return arbitratorOptional.get();
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue