From ee9205fec92eae9d7b1142a2cedc1a1c48e6b1b9 Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Tue, 10 Jun 2014 23:14:46 +0200 Subject: [PATCH] update --- README.md | 13 +++++++------ TODO.txt | 13 ------------- src/main/java/io/bitsquare/btc/Fees.java | 4 ++-- src/main/java/io/bitsquare/btc/WalletFacade.java | 4 +++- .../market/createOffer/CreateOfferController.java | 8 ++++---- .../gui/market/trade/TakerTradeController.java | 2 +- src/main/java/io/bitsquare/msg/MessageFacade.java | 5 +++-- .../io/bitsquare/trade/orderbook/OrderBook.java | 1 + .../bitsquare/trade/taker/TakerPaymentProtocol.java | 4 ++-- 9 files changed, 23 insertions(+), 31 deletions(-) delete mode 100644 TODO.txt diff --git a/README.md b/README.md index c5022ff48c..e490a7c905 100644 --- a/README.md +++ b/README.md @@ -29,13 +29,13 @@ You can change the network mode in the guice module: BitSquareModule.java * TomP2P as messaging lib integrated and basic use cases in msg screen implemented: orderbook, add order, remove order, peer interaction * Payment process implemented with messaging for Offerer buy BTC case * Hash of contract data embedded into tx (OP_RETURN) +* Arbitrator integration concept +* Conceptual refinements +* Develop funding model ### Next steps: -* Conceptual refinements -* Arbitrator integration concept -* Other trade variants (Buy BTC taker, Sell BTC offerer, Sell BTC offerer) -* Develop funding model * Start development of production version +* Other trade variants (Buy BTC taker, Sell BTC offerer, Sell BTC offerer) ### Screenshots of basic the use cases: @@ -60,8 +60,9 @@ Deposit tx: https://blockchain.info/de/tx/98c6ae55963022871216a6a124c1e1ed7f6308 Payout tx: https://blockchain.info/tx/498e2c299ca991b27f61b63fb6ee457819ee9e33ee5a1d250fde47eb15199adc -### Links: +### Resources: * Web: http://bitsquare.io * Whitepaper: https://docs.google.com/document/d/1d3EiWZdaM89-P6MVhS53unXv2-pDpSFsN3W4kCGXKgY/edit?pli=1 * Overview: http://bitsquare.io/images/overview.png -* Discussion: https://bitcointalk.org/index.php?topic=462236 +* Discussion: https://bitcointalk.org/index.php?topic=647457 +* Video of POC prototype: https://www.youtube.com/watch?v=ByfnzJzi0bo diff --git a/TODO.txt b/TODO.txt deleted file mode 100644 index b4decedf5d..0000000000 --- a/TODO.txt +++ /dev/null @@ -1,13 +0,0 @@ -- arbitration integration -- settings - -low prio: -- start with orderbook and open registration when user interacts with orderbook (take offer, create offer) -- settings screen -- return to setup when unregistered, change/add bank accounts from settings -- refactor trade process -- formatting -- validation - - - diff --git a/src/main/java/io/bitsquare/btc/Fees.java b/src/main/java/io/bitsquare/btc/Fees.java index e27a50707c..ab790ad798 100644 --- a/src/main/java/io/bitsquare/btc/Fees.java +++ b/src/main/java/io/bitsquare/btc/Fees.java @@ -9,7 +9,7 @@ public class Fees { // min dust value lead to exception at for non standard to address pay scripts, so we use a value >= 7860 instead public static BigInteger TX_FEE = Transaction.REFERENCE_DEFAULT_MIN_TX_FEE; - public static BigInteger ACCOUNT_REGISTRATION_FEE = Utils.toNanoCoins("0.0002"); - public static BigInteger OFFER_CREATION_FEE = Utils.toNanoCoins("0.0002"); + public static BigInteger ACCOUNT_REGISTRATION_FEE = Utils.toNanoCoins("0.01"); + public static BigInteger OFFER_CREATION_FEE = Utils.toNanoCoins("0.001"); public static BigInteger OFFER_TAKER_FEE = OFFER_CREATION_FEE; } diff --git a/src/main/java/io/bitsquare/btc/WalletFacade.java b/src/main/java/io/bitsquare/btc/WalletFacade.java index 61dc012aee..273f1dbcef 100644 --- a/src/main/java/io/bitsquare/btc/WalletFacade.java +++ b/src/main/java/io/bitsquare/btc/WalletFacade.java @@ -508,7 +508,7 @@ public class WalletFacade } // 4 step deposit tx: Offerer send deposit tx to taker - public void takerCommitDepositTx(String depositTxAsHex) + public String takerCommitDepositTx(String depositTxAsHex) { log.trace("takerCommitDepositTx"); log.trace("inputs: "); @@ -528,6 +528,8 @@ public class WalletFacade throw new RuntimeException(e); // Cannot happen, we already called multisigContract.verify() } + return depositTx.getHashAsString(); + } // 5. step payout tx: Offerer creates payout tx and signs it diff --git a/src/main/java/io/bitsquare/gui/market/createOffer/CreateOfferController.java b/src/main/java/io/bitsquare/gui/market/createOffer/CreateOfferController.java index 48f87cc9aa..e312790d01 100644 --- a/src/main/java/io/bitsquare/gui/market/createOffer/CreateOfferController.java +++ b/src/main/java/io/bitsquare/gui/market/createOffer/CreateOfferController.java @@ -94,10 +94,10 @@ public class CreateOfferController implements Initializable, ChildController //TODO - amountTextField.setText("0,001"); - minAmountTextField.setText("0,001"); - priceTextField.setText("300"); - collateralTextField.setText("50"); + /* amountTextField.setText(""+(int)(new Random().nextDouble()*100/10+1)); + priceTextField.setText(""+ (int)(499 - new Random().nextDouble()*1000/100)); */ + minAmountTextField.setText("0,1"); + collateralTextField.setText("10"); updateVolume(); amountTextField.textProperty().addListener(new ChangeListener() diff --git a/src/main/java/io/bitsquare/gui/market/trade/TakerTradeController.java b/src/main/java/io/bitsquare/gui/market/trade/TakerTradeController.java index e075709874..73a9c006fa 100644 --- a/src/main/java/io/bitsquare/gui/market/trade/TakerTradeController.java +++ b/src/main/java/io/bitsquare/gui/market/trade/TakerTradeController.java @@ -171,7 +171,7 @@ public class TakerTradeController implements Initializable, ChildController totalLabel = FormBuilder.addTextField(gridPane, "Total (" + offer.getCurrency() + "):", Formatter.formatVolume(getVolume()), ++row); collateralTextField = FormBuilder.addTextField(gridPane, "Collateral (BTC):", "", ++row); applyCollateral(); - FormBuilder.addTextField(gridPane, "Offer fee (BTC):", Utils.bitcoinValueToFriendlyString(Fees.OFFER_TAKER_FEE.add(Transaction.MIN_NONDUST_OUTPUT).add(Fees.TX_FEE)), ++row); + FormBuilder.addTextField(gridPane, "Offer fee (BTC):", Utils.bitcoinValueToFriendlyString(Fees.OFFER_TAKER_FEE.add(Fees.TX_FEE)), ++row); totalToPayLabel = FormBuilder.addTextField(gridPane, "Total to pay (BTC):", getTotalToPay(), ++row); isOnlineTextField = FormBuilder.addTextField(gridPane, "Online status:", "Checking offerers online status...", ++row); diff --git a/src/main/java/io/bitsquare/msg/MessageFacade.java b/src/main/java/io/bitsquare/msg/MessageFacade.java index 98e49022b7..e9d8edf2cd 100644 --- a/src/main/java/io/bitsquare/msg/MessageFacade.java +++ b/src/main/java/io/bitsquare/msg/MessageFacade.java @@ -98,7 +98,7 @@ public class MessageFacade try { createMyPeerInstance(keyName, port); - //setupStorage(); + setupStorage(); //TODO save periodically or get informed if network address changes saveMyAddressToDHT(); setupReplyHandler(); @@ -160,10 +160,11 @@ public class MessageFacade public void addOffer(Offer offer) throws IOException { Number160 locationKey = Number160.createHash(offer.getCurrency().getCurrencyCode()); - Number160 contentKey = Number160.createHash(offer.getUid()); + final Number160 contentKey = Number160.createHash(offer.getUid()); final Data offerData = new Data(offer); //offerData.setTTLSeconds(5); final FutureDHT addFuture = myPeer.put(locationKey).setData(contentKey, offerData).start(); + //final FutureDHT addFuture = myPeer.add(locationKey).setData(offerData).start(); addFuture.addListener(new BaseFutureAdapter() { @Override diff --git a/src/main/java/io/bitsquare/trade/orderbook/OrderBook.java b/src/main/java/io/bitsquare/trade/orderbook/OrderBook.java index 617dd55da5..be85082dac 100644 --- a/src/main/java/io/bitsquare/trade/orderbook/OrderBook.java +++ b/src/main/java/io/bitsquare/trade/orderbook/OrderBook.java @@ -197,6 +197,7 @@ public class OrderBook implements OrderBookListener if (success && dataMap != null) { allOffers.clear(); + for (Data offerData : dataMap.values()) { try diff --git a/src/main/java/io/bitsquare/trade/taker/TakerPaymentProtocol.java b/src/main/java/io/bitsquare/trade/taker/TakerPaymentProtocol.java index edf9c0cb3a..5b4ab47d7b 100644 --- a/src/main/java/io/bitsquare/trade/taker/TakerPaymentProtocol.java +++ b/src/main/java/io/bitsquare/trade/taker/TakerPaymentProtocol.java @@ -471,9 +471,9 @@ public class TakerPaymentProtocol { log.debug("3.6 DepositTxID received: " + tradeMessage.getDepositTxAsHex()); - walletFacade.takerCommitDepositTx(tradeMessage.getDepositTxAsHex()); + String txID = walletFacade.takerCommitDepositTx(tradeMessage.getDepositTxAsHex()); takerPaymentProtocolListener.onProgress(getProgress()); - takerPaymentProtocolListener.onDepositTxPublished(tradeMessage.getDepositTxAsHex()); + takerPaymentProtocolListener.onDepositTxPublished(txID); }