From a508f955823820542ca9cdeb256ca7bf1ba5b06a Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Sat, 17 May 2014 01:48:23 +0200 Subject: [PATCH] payment process payout done --- src/main/java/io/bitsquare/BitSquare.java | 8 +- src/main/java/io/bitsquare/RelayNode.java | 2 +- .../btc/AccountRegistrationWallet.java | 49 +-- src/main/java/io/bitsquare/btc/Fees.java | 9 +- .../java/io/bitsquare/btc/WalletFacade.java | 296 ++++++++++++++---- .../java/io/bitsquare/di/BitSquareModule.java | 6 +- .../java/io/bitsquare/gui/MainController.java | 1 - .../gui/components/ConfirmationComponent.java | 67 ---- .../gui/components/NetworkSyncPane.java | 1 + .../createOffer/CreateOfferController.java | 11 +- .../market/trade/TakerTradeController.java | 70 +++-- .../gui/orders/OrdersController.java | 211 +++++++++---- .../io/bitsquare/gui/orders/OrdersView.fxml | 38 ++- .../bitsquare/gui/setup/SetupController.java | 16 +- .../bitsquare/gui/util/ConfidenceDisplay.java | 4 + .../io/bitsquare/gui/util/FormBuilder.java | 16 +- .../java/io/bitsquare/msg/MessageFacade.java | 10 +- .../java/io/bitsquare/msg/TradeMessage.java | 76 ++++- .../io/bitsquare/msg/TradeMessageType.java | 4 +- .../java/io/bitsquare/storage/Storage.java | 2 +- src/main/java/io/bitsquare/trade/Trade.java | 8 + src/main/java/io/bitsquare/trade/Trading.java | 40 ++- .../trade/offerer/OffererPaymentProtocol.java | 147 ++++++--- .../OffererPaymentProtocolListener.java | 2 + .../trade/taker/TakerPaymentProtocol.java | 123 +++++++- .../taker/TakerPaymentProtocolListener.java | 6 +- .../java/io/bitsquare/util/DSAKeyUtil.java | 2 +- src/main/resources/logback.xml | 19 +- 28 files changed, 867 insertions(+), 377 deletions(-) delete mode 100644 src/main/java/io/bitsquare/gui/components/ConfirmationComponent.java diff --git a/src/main/java/io/bitsquare/BitSquare.java b/src/main/java/io/bitsquare/BitSquare.java index a09e9237cd..c063616bc6 100644 --- a/src/main/java/io/bitsquare/BitSquare.java +++ b/src/main/java/io/bitsquare/BitSquare.java @@ -122,13 +122,13 @@ public class BitSquare extends Application settings.getAcceptedArbitrators().clear(); settings.addAcceptedArbitrator(new Arbitrator("uid_1", "Charlie Boom", Utils.bytesToHexString(new ECKey().getPubKey()), - getMessagePubKey(), "http://www.arbit.io/Charly_Boom", 1, 10, Utils.toNanoCoins("0.01"))); + getMessagePubKey(), "http://www.arbit.io/Charly_Boom", 10, 50, Utils.toNanoCoins("0.01"))); settings.addAcceptedArbitrator(new Arbitrator("uid_2", "Tom Shang", Utils.bytesToHexString(new ECKey().getPubKey()), - getMessagePubKey(), "http://www.arbit.io/Tom_Shang", 0, 1, Utils.toNanoCoins("0.001"))); + getMessagePubKey(), "http://www.arbit.io/Tom_Shang", 10, 100, Utils.toNanoCoins("0.001"))); settings.addAcceptedArbitrator(new Arbitrator("uid_3", "Edward Snow", Utils.bytesToHexString(new ECKey().getPubKey()), - getMessagePubKey(), "http://www.arbit.io/Edward_Swow", 2, 5, Utils.toNanoCoins("0.05"))); + getMessagePubKey(), "http://www.arbit.io/Edward_Swow", 20, 50, Utils.toNanoCoins("0.05"))); settings.addAcceptedArbitrator(new Arbitrator("uid_4", "Julian Sander", Utils.bytesToHexString(new ECKey().getPubKey()), - getMessagePubKey(), "http://www.arbit.io/Julian_Sander", 0, 20, Utils.toNanoCoins("0.1"))); + getMessagePubKey(), "http://www.arbit.io/Julian_Sander", 10, 20, Utils.toNanoCoins("0.1"))); settings.setMinCollateral(1); settings.setMaxCollateral(10); diff --git a/src/main/java/io/bitsquare/RelayNode.java b/src/main/java/io/bitsquare/RelayNode.java index 48cbea124b..d6da424815 100755 --- a/src/main/java/io/bitsquare/RelayNode.java +++ b/src/main/java/io/bitsquare/RelayNode.java @@ -23,7 +23,7 @@ public class RelayNode { masterPeer = new PeerMaker(ID).setPorts(port).makeAndListen(); // masterPeer = new PeerMaker(ID).setPorts(port).setBagSize(100).makeAndListen(); // setBagSize cause sync problems... - masterPeer.getBroadcastRPC().getConnectionBean().getConnectionReservation().reserve(10).awaitUninterruptibly(); + masterPeer.getBroadcastRPC().getConnectionBean().getConnectionReservation().reserve(3).awaitUninterruptibly(); } return masterPeer; } diff --git a/src/main/java/io/bitsquare/btc/AccountRegistrationWallet.java b/src/main/java/io/bitsquare/btc/AccountRegistrationWallet.java index 3605d5c029..c270fd66ef 100644 --- a/src/main/java/io/bitsquare/btc/AccountRegistrationWallet.java +++ b/src/main/java/io/bitsquare/btc/AccountRegistrationWallet.java @@ -9,8 +9,6 @@ import com.google.common.util.concurrent.FutureCallback; import com.google.common.util.concurrent.Futures; import io.bitsquare.BitSquare; import io.bitsquare.util.Utilities; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import java.io.File; import java.io.FileInputStream; @@ -25,23 +23,33 @@ import static com.google.bitcoin.script.ScriptOpCodes.OP_RETURN; public class AccountRegistrationWallet extends Wallet implements WalletEventListener { - private static final Logger log = LoggerFactory.getLogger(AccountRegistrationWallet.class); + // private static final Logger log = LoggerFactory.getLogger(AccountRegistrationWallet.class); private final File walletFile; - private NetworkParameters networkParameters; + private NetworkParameters params; private BlockChain chain; private PeerGroup peerGroup; private List walletListeners = new ArrayList<>(); - AccountRegistrationWallet(NetworkParameters networkParameters, BlockChain chain, PeerGroup peerGroup) + AccountRegistrationWallet(NetworkParameters params, BlockChain chain, PeerGroup peerGroup) { - super(networkParameters); + super(params); - this.networkParameters = networkParameters; + this.params = params; this.chain = chain; this.peerGroup = peerGroup; - walletFile = new File(Utilities.getRootDir() + "account_reg_" + BitSquare.ID + ".wallet"); + /* try + { + final InetAddress localHost = InetAddress.getLocalHost(); + PeerAddress peerAddress = new PeerAddress(localHost, params.getPort()); + peerGroup.addAddress(peerAddress); + } catch (UnknownHostException e) + { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } */ + + walletFile = new File(Utilities.getRootDir() + BitSquare.ID + "_account_reg" + ".wallet"); if (walletFile.exists()) { FileInputStream walletStream = null; @@ -78,6 +86,7 @@ public class AccountRegistrationWallet extends Wallet implements WalletEventList } autosaveToFile(walletFile, 1, TimeUnit.SECONDS, null); + peerGroup.setMinBroadcastConnections(1); allowSpendingUnconfirmedTransactions(); } @@ -95,7 +104,7 @@ public class AccountRegistrationWallet extends Wallet implements WalletEventList Address getAddress() { - return getKey().toAddress(networkParameters); + return getKey().toAddress(params); } ECKey getKey() @@ -125,8 +134,8 @@ public class AccountRegistrationWallet extends Wallet implements WalletEventList .op(OP_RETURN) .data(dataToEmbed) .build(); - Transaction transaction = new Transaction(networkParameters); - TransactionOutput dataOutput = new TransactionOutput(networkParameters, + Transaction transaction = new Transaction(params); + TransactionOutput dataOutput = new TransactionOutput(params, transaction, Transaction.MIN_NONDUST_OUTPUT, script.getProgram()); @@ -144,14 +153,14 @@ public class AccountRegistrationWallet extends Wallet implements WalletEventList @Override public void onSuccess(Transaction result) { - log.info("sendResult onSuccess:" + result.toString()); + //log.info("sendResult onSuccess:" + result.toString()); // Platform.runLater(overlayUi::done); } @Override public void onFailure(Throwable t) { - log.warn("sendResult onFailure:" + t.toString()); + //log.warn("sendResult onFailure:" + t.toString()); // We died trying to empty the wallet. // crashAlert(t); } @@ -171,7 +180,7 @@ public class AccountRegistrationWallet extends Wallet implements WalletEventList for (WalletFacade.WalletListener walletListener : walletListeners) walletListener.onCoinsReceived(newBalance); - // log.info("onCoinsReceived"); + // //log.info("onCoinsReceived"); } @Override @@ -180,37 +189,37 @@ public class AccountRegistrationWallet extends Wallet implements WalletEventList for (WalletFacade.WalletListener walletListener : walletListeners) walletListener.onConfidenceChanged(tx.getConfidence().numBroadcastPeers(), WalletUtil.getConfDepthInBlocks(this)); - // log.info("onTransactionConfidenceChanged " + tx.getConfidence().toString()); + // //log.info("onTransactionConfidenceChanged " + tx.getConfidence().toString()); } @Override public void onCoinsSent(Wallet wallet, Transaction tx, BigInteger prevBalance, BigInteger newBalance) { - log.info("onCoinsSent"); + //log.info("onCoinsSent"); } @Override public void onReorganize(Wallet wallet) { - log.info("onReorganize"); + //log.info("onReorganize"); } @Override public void onWalletChanged(Wallet wallet) { - // log.info("onWalletChanged"); + // //log.info("onWalletChanged"); } @Override public void onKeysAdded(Wallet wallet, List keys) { - log.info("onKeysAdded"); + //log.info("onKeysAdded"); } @Override public void onScriptsAdded(Wallet wallet, List