langerhans
905629a78f
Merge branch 'master' of https://github.com/bitcoinj/bitcoinj into rebase
...
Conflicts:
README.md
core/pom.xml
core/src/main/java/com/dogecoin/dogecoinj/core/DownloadListener.java
core/src/main/java/com/dogecoin/dogecoinj/core/MemoryPool.java
core/src/main/java/com/dogecoin/dogecoinj/core/NetworkParameters.java
core/src/main/java/com/dogecoin/dogecoinj/core/PeerFilterProvider.java
core/src/main/java/com/dogecoin/dogecoinj/core/PeerGroup.java
core/src/main/java/com/dogecoin/dogecoinj/core/StoredTransactionOutput.java
core/src/main/java/com/dogecoin/dogecoinj/core/Wallet.java
core/src/main/java/com/dogecoin/dogecoinj/crypto/EncryptedPrivateKey.java
core/src/main/java/com/dogecoin/dogecoinj/crypto/KeyCrypterScrypt.java
core/src/main/java/com/dogecoin/dogecoinj/jni/NativeTransactionConfidenceListener.java
core/src/main/java/com/dogecoin/dogecoinj/kits/WalletAppKit.java
core/src/main/java/com/dogecoin/dogecoinj/net/FilterMerger.java
core/src/main/java/com/dogecoin/dogecoinj/protocols/channels/IPaymentChannelClient.java
core/src/main/java/com/dogecoin/dogecoinj/protocols/channels/PaymentChannelClient.java
core/src/main/java/com/dogecoin/dogecoinj/protocols/channels/PaymentChannelClientConnection.java
core/src/main/java/com/dogecoin/dogecoinj/protocols/channels/PaymentChannelClientState.java
core/src/main/java/com/dogecoin/dogecoinj/store/BlockStore.java
core/src/main/java/com/dogecoin/dogecoinj/store/FullPrunedBlockStore.java
core/src/main/java/com/dogecoin/dogecoinj/store/H2FullPrunedBlockStore.java
core/src/main/java/com/dogecoin/dogecoinj/store/PostgresFullPrunedBlockStore.java
core/src/main/java/com/dogecoin/dogecoinj/testing/FakeTxBuilder.java
core/src/main/java/com/dogecoin/dogecoinj/testing/TestWithPeerGroup.java
core/src/main/java/com/dogecoin/dogecoinj/wallet/KeyChainGroup.java
core/src/main/java/org/bitcoinj/core/DownloadListener.java
core/src/main/java/org/bitcoinj/core/DownloadProgressTracker.java
core/src/main/java/org/bitcoinj/core/MemoryPool.java
core/src/main/java/org/bitcoinj/core/StoredTransactionOutput.java
core/src/main/java/org/bitcoinj/core/TxConfidenceTable.java
core/src/main/java/org/bitcoinj/core/UTXO.java
core/src/main/java/org/bitcoinj/params/MainNetParams.java
core/src/test/java/com/dogecoin/dogecoinj/core/AbstractFullPrunedBlockChainTest.java
core/src/test/java/com/dogecoin/dogecoinj/core/BitcoindComparisonTool.java
core/src/test/java/com/dogecoin/dogecoinj/core/FilteredBlockAndPartialMerkleTreeTests.java
core/src/test/java/com/dogecoin/dogecoinj/core/FullBlockTestGenerator.java
core/src/test/java/com/dogecoin/dogecoinj/core/PostgresFullPrunedBlockChainTest.java
core/src/test/java/com/dogecoin/dogecoinj/core/WalletTest.java
core/src/test/java/com/dogecoin/dogecoinj/crypto/ChildKeyDerivationTest.java
core/src/test/java/com/dogecoin/dogecoinj/store/WalletProtobufSerializerTest.java
core/src/test/java/com/dogecoin/dogecoinj/wallet/DefaultRiskAnalysisTest.java
core/src/test/java/com/dogecoin/dogecoinj/wallet/DeterministicKeyChainTest.java
tools/src/main/java/com/dogecoin/dogecoinj/tools/WalletTool.java
wallettemplate/pom.xml
wallettemplate/src/main/java/wallettemplate/Main.java
wallettemplate/src/main/java/wallettemplate/MainController.java
wallettemplate/src/main/java/wallettemplate/SendMoneyController.java
2014-12-23 18:09:55 +01:00
Mike Hearn
b25899de58
Rename DownloadListener to DownloadProgressTracker
2014-12-18 13:59:50 +01:00
Mike Hearn
8acf2e91e8
Add a BIP70 example to the javascript folder
2014-12-04 18:51:45 +01:00
Mike Hearn
90dace2ef5
Java 8 syntax cleanup
2014-12-03 13:10:07 +01:00
Devrandom
b9bca58f26
Remove tx from TransactionConfidence
2014-12-03 13:10:06 +01:00
Mike Hearn
e7c00df740
Replace peerGroup.startAsync/awaitRunning with start() and awaitTerminated with stop().
2014-11-24 13:04:58 +01:00
Mike Hearn
0952cf3d20
RefreshWallet doesn't need to specify localhost explicitly anymore.
2014-11-23 14:23:35 +01:00
Richard Green
3a23bb5ecd
Update forwarding.py
...
removed commented code that served no purpose.
2014-11-03 14:11:16 +01:00
Richard 'ragmondo' Green
17d8ac8d74
Made the sys.path.append more obvious
2014-11-03 14:11:16 +01:00
Richard 'ragmondo' Green
7169643d1c
Renamed params variable to use correct source library; removed traceback usage to be compatible with jython 2.5
2014-11-03 14:11:16 +01:00
Alon Muroch
6e40d4d7cd
Delete watched scripts methods. Fixed queueOnScriptsChanged threading.
2014-10-31 11:07:59 +01:00
langerhans
5f16d915ea
fix peer monitor
2014-10-18 22:47:19 +02:00
langerhans
cda772d8ec
Step 2: Move and refactor packages
2014-10-18 20:02:01 +02:00
langerhans
e73ff6b53c
Step 1: Update pom descriptors
2014-10-18 19:16:39 +02:00
ollekullberg
f40785fbdf
ExamplePaymentChannelClient should not send PeerGroup to the extension, since it uses WalletAppKit.
2014-10-17 11:17:11 +02:00
Mike Hearn
9dcc4ed6f4
0.13-SNAPSHOT
2014-10-05 20:38:00 +02:00
Mike Hearn
83a9a71f3f
bitcoinj 0.12
2014-10-03 00:46:31 +02:00
Mike Hearn
953625de9b
Add a couple of JavaScript examples.
2014-10-02 16:19:44 +02:00
Mike Hearn
0a6f901b23
Renamespace to org.bitcoinj away from com.google.bitcoin, as bitcoinj is no longer a Google project and being namespaced under com.google causes issues with Sonatype/Maven Central.
...
To fixinate your code:
find . -name '*.java' | xargs sed -i .bak 's/import com.google.bitcoin./import org.bitcoinj./g;s/import static com.google.bitcoin./import static org.bitcoinj./g'
2014-09-30 17:05:07 +02:00
Mike Hearn
8240f0c312
Add a Python/Jython version of the getting started tutorial, thanks to Richard Green.
2014-09-30 15:38:44 +02:00
Martin Zachrison
036f0bec27
Make PaymentChannel.ServerConnection.paymentIncrease asynchronous.
2014-09-30 14:34:54 +02:00
Devrandom
03bacf4fa9
Cache deterministic seed
2014-09-22 15:00:18 +02:00
Michael Bumann
cfd795ccbd
Adding more examples.
...
This adds example usages of:
* using the WalletAppKit
* restoring a wallet from a seed
* sending coins
* implementing a WalletEventListener
2014-09-22 12:12:14 +02:00
ollekullberg
fe91dc9110
Payment channel extension should be able to be initialized in two steps:
...
* A constructor that only takes the wallet as an argument
* A setTransactionBroadcaster() which should be called when the Bitcoin network is ready
Motivation: Some wallets (MultiBitHD) does not use WalletAppKit, and starts with reading the wallet before initializing the bitcoin network.
Now these wallets can create the wallet (and the wallet file is read), and call the setter after the bitcoin network is up.
2014-08-11 18:43:18 +02:00
cyberzac
eff9ac2ecc
Support for bundling an optional info Protobuf ByteString with a PaymentAck message
2014-08-03 21:02:40 +02:00
cyberzac
1153192be8
Support for bundling an optional info Protobuf ByteString with an UpdatePayment message.
2014-07-31 16:01:38 +02:00
Andreas Schildbach
afcc7e3f13
Coin.toFriendlyFormat() includes denomination (BTC). This saves a lot of string concatenation code.
2014-07-05 21:03:51 +02:00
Mike Hearn
60e70bd79e
Fix to the PrivateKeys example. Thanks to recallfx for the patch.
2014-06-02 21:49:59 +08:00
Andreas Schildbach
d4c1a1b043
Add missing @Override annotations.
2014-05-30 15:33:58 +02:00
Andreas Schildbach
51c48bb69f
Clean up coin constants and make more use of it.
2014-05-30 15:09:33 +02:00
Andreas Schildbach
48a76a8a03
Clean up Coin API for multiplications and divisions.
2014-05-30 15:09:32 +02:00
Andreas Schildbach
eb81b0c815
Move coin related methods and constants from Utils into Coin.
2014-05-30 15:09:32 +02:00
Andreas Schildbach
022e7c27fe
Wrap coin-ish BigIntegers into Coin class.
2014-05-30 15:09:32 +02:00
Mike Hearn
5638387d3a
HD wallets alpha preview
2014-05-29 20:11:13 +02:00
Mike Hearn
8ff52f5217
Payment channels: update example client to reflect API changes.
2014-05-28 13:26:19 +02:00
Piotr Włodarek
c08c68fc5e
Dealt with several compiler notices by verifying and then fixing or suppressing. Reduces compilation output noise.
2014-05-25 11:43:36 +02:00
Mike Hearn
0942bb57b5
Add a double spending test program
2014-04-15 13:35:11 +02:00
Andreas Schildbach
6087e43377
Upgrade to Guava 16.0.1.
...
Resolves issue 375.
2014-04-08 16:49:09 +02:00
Mike Hearn
829656b153
Correct maven instruction in the README file and make ForwardingService work on mainnet again by fixing command line arg parsing.
...
Resolves issue 523.
2014-03-10 17:36:32 +01:00
Andreas Schildbach
8fdfb04e43
Update SLF4J to version 1.7.6. Previously, inconsistent versions were used between sub-projects. All unit-tests pass.
2014-03-07 17:47:42 +01:00
Mike Hearn
5b74ea5c7b
Switch to version 0.12-SNAPSHOT. To the moon! ;)
2014-02-04 11:31:42 +01:00
Devrandom
3d99be48bc
Priority queue and exponential backoff for PeerGroup
...
Connect to peers in a service loop thread.
Resolves issue #159
Resolves issue #503
2013-12-23 22:57:19 +00:00
Mike Hearn
ce4ac86884
Move discovery package into net package.
2013-12-10 13:13:52 -08:00
Mike Hearn
3318d15194
Rename networkabstraction package to just net
2013-12-10 13:12:22 -08:00
Matt Corallo
534cec9791
Rewrite the network stack.
...
Remove Netty entirely, using the new Nio wrapper classes instead
* BitcoinSerializer now uses ByteBuffers directly instead of
InputStreams.
* TCPNetworkConnection and NetworkConnection interface deleted,
Peer now extends the abstract class PeerSocketHandler which
handles deserialization and interfaces with the Nio wrapper
classes.
* As a part of this, all version message handling has been moved
to Peer, instead of doing it in TCPNetworkConnection.
* Peer.setMinProtocolVersion() now returns a boolean instead of a
null/non-null future which holds the now-closing channel.
* Peer.sendMessage (now PeerSocketHandler.sendMessage()) now
returns void.
* PeerGroup has some significant API changes:
* removed constructors which take pipeline factories,
makePipelineFactory, createClientBootstrap
* Replaced with a setSocketTimeoutMillis method that sets a
timeout between openConnection() and version/verack exchange.
(Note that because Peer extends AbstractTimeoutHandler, it has
useful timeout setters public already).
* connectTo returns a Peer future, not a ChannelFuture
* removed peerFromChannelFuture and peerFromChannel
* Peer and PeerGroup Tests have semi-significant rewrites:
* They use actual TCP connections to localhost
* The "remote" side is a InboundMessageQueuer, which queues
inbound messages and allows for writing arbitrary messages.
* It ignores certain special pings which come from pingAndWait,
which is used to wait for message processing in the Peer.
* Removed a broken test in PeerGroupTest that should be reenabled
if we ever prefer a different version than our minimum version
again.
* Removed two duplicate tests in PeerTest (testRun_*Exception)
which are tested for in badMessage as well.
* Added a test for peer timeout and large message deserialization
Author: Matt Corallo <git@bluematt.me>
2013-12-10 13:03:14 -08:00
Mike Hearn
70cd2ffb96
Wallet: throw exceptions when completing a transaction fails.
...
If there's insufficient balance (typical error) then InsufficientMoneyException is thrown (checked).
If the SendRequest is bad in some way, like asking to create a spend that would violate the protocol rules, IllegalArgumentException is thrown (unchecked).
Also make VerificationException (and thus ProtocolException+ScriptException) unchecked.
Resolves issue 425.
2013-11-27 15:25:52 +01:00
Mike Hearn
0bc28781ae
Payment channels: rename "close" to "settle".
...
The previous overloading of the term "close" to mean both settlement of the channel (broadcast of the final payment tx) and terminating/cleaning up the underlying network connection was very confusing and made the code harder to work with. The notion of "closing" a protocol that is often embedded inside others isn't really well defined, so there's perhaps more work to do here, but this change makes the code easier to follow and is basically a big pile of no-ops.
2013-11-12 13:37:46 +01:00
Mike Hearn
533e2f21b7
Delete ToyWallet example. It's redundant with the wallettemplate app now.
2013-10-27 17:15:42 +01:00
Mike Hearn
95f528a340
Add more features to WalletAppKit, and ensure wallets it creates always have at least one key.
2013-09-15 20:24:52 +02:00
Mike Hearn
9bd52196ed
Payment channels: Shrink the payment channel server example min required value to make it more micropaymenty.
2013-09-04 13:27:10 +02:00