Sean Gilligan
03d6d4cf87
build.gradle: update equalsverifier to 3.15.2
2023-10-24 11:57:41 +02:00
Sean Gilligan
b8b64a339a
build.gradle: update SLF4J to 2.0.9
2023-10-24 11:48:23 +02:00
Sean Gilligan
cb740d2eaa
PeerTest, PeerGroupTest: replace usage of Guava Lists
2023-10-02 21:10:08 +02:00
Sean Gilligan
647c7ecbd7
TransactionBroadcastTest: use AtomicLong
over Guava AtomicDouble
...
Use `AtomicLong` with some wrapping and unwrapping instead.
2023-10-02 21:06:17 +02:00
Sean Gilligan
1b63903ad3
TestWithPeerGroup: remove unneeded use of ListeningScheduledExecutorService
...
There is no longer a need to decorate `ScheduledThreadPoolExecutor` to support
`ListeningScheduledExecutorService` since `PeerGroup` no longer uses it.
2023-10-02 20:48:49 +02:00
Sean Gilligan
5513f7dff0
InternalUtils: new helper getUninterruptibly()
to replace Guava method
...
Update usages in `PeerGroup` and `PeerTest`.
2023-10-02 20:44:46 +02:00
Sean Gilligan
2526f5c78a
BitcoinSerializer: use Network
not NetworkParameters
...
Also deprecate (unused) method `getParameters()`.
2023-09-30 18:27:28 +02:00
Sean Gilligan
81b78292e2
PeerGroup, FilterMerger: deprecate setting false-positive rate
...
In the bitcoinj code itself, the false-positive rate is never changed
after constructing a `PeerGroup` or a `FilterMerger`.
* Deprecate methods for setting Bloom Filter FP rate in both methods
* Add constructor params to `PeerGroup` so they can be set at construction
time, if non-default values are needed
2023-09-16 11:42:24 +02:00
Sean Gilligan
c8bf030824
build.gradle: update EasyMock to 5.2.0
2023-09-02 18:09:47 +02:00
Sean Gilligan
111a8b8a37
ListMessage, InventoryMessage, GetDataMessage: make immutable (after deprecations removed)
...
Make `ListMessage` and its subclasses "almost" immutable. When the deprecated
`addItem()`, `removeItem()`, etc. methods are removed and the constructors are
changed to create an ummodifiable `List`, they will be immutable.
2023-09-01 18:24:58 +02:00
Sean Gilligan
59ab13680d
BlockFileLoader: make stream of ByteBuffer
available
...
* Inner class `BlockFileIterator` now iterates `ByteBuffer`
* `stream()` method calls `MessageSerializer.makeBlock()`
* `streamBuffers()` method makes raw `ByteBuffer` blocks available
* Add integration test `streamEntireBitcoindBlockChainAsBuffers()`
2023-08-23 18:21:01 +02:00
Sean Gilligan
62e2e013c4
BlockFileLoaderBitcoindTest: add blockstore test, improve output
2023-08-23 18:12:51 +02:00
Sean Gilligan
dd8c4ed372
BlockFileLoaderBitcoindTest: new (ignored) integration test that reads bitcoind blocks
...
This is ignored because:
a) It requires bitcoind installation with a blockchain directory
b) It takes about 1 hour to run
2023-08-23 18:08:56 +02:00
Andreas Schildbach
6b38774a38
PartialMerkleTree: rename method messageSize()
from getMessageSize()
...
Keep the old method as deprecated.
2023-08-10 18:59:58 +02:00
Sean Gilligan
352614280c
BlockLocator: deprecate add & no-args constructor
...
Deprecate `.add()` and no-args constructor in favor of providing complete
list of hashes at creation time.
Update all usages to use the alternative methods.
2023-08-08 21:01:37 +02:00
Sean Gilligan
be650b4464
WalletAppKitLaunchTest: add disabled functional/integration test
2023-08-08 12:12:25 +02:00
Sean Gilligan
6775635ce5
uild.gradle: update JUnit 5 to 5.10.0
2023-07-27 11:01:53 +02:00
Andreas Schildbach
3284b6e309
build.gradle: update JUnit 5 to 5.9.3
2023-07-16 13:05:14 +02:00
Andreas Schildbach
02fd2f036a
build.gradle: update equalsverifier to 3.15
2023-07-16 12:45:39 +02:00
Andreas Schildbach
e7017bfc2f
KeyChainGroup: migrate to Network
from NetworkParameters
2023-04-19 22:58:52 +02:00
Sean Gilligan
9291841f8d
Wallet: use Network
in static factory methods
...
* Adds new methods taking `Network` rather than `NetworkParameters`
* Deprecates all converted methods
* Updates tests, examples, and tools that use these calls
2023-04-18 12:47:09 +02:00
Sean Gilligan
5eb67285db
Message: rename methods serialize()
and messageSize()
...
Provide deprecated implementations of `bitcoinSerialize()`
and `getMessageSize()`.
2023-04-16 18:49:32 +02:00
Andreas Schildbach
c3d20cb9b4
Ping, Pong: make immutable
2023-04-16 10:32:54 +02:00
Andreas Schildbach
92355b1c32
BloomFilter: move parse()
to static constructor read()
2023-04-16 08:26:02 +02:00
Andreas Schildbach
eac2c1fee3
FilteredBlock: move parse()
to static constructor read()
2023-04-16 08:07:56 +02:00
Andreas Schildbach
838d14d027
PeerAddress: make immutable
...
* Static constructors `simple()` and `inet()` that replace the native constructors.
2023-04-13 00:21:36 +02:00
Andreas Schildbach
0401a0cde2
PartialMerkleTree: make immutable
2023-04-13 00:16:16 +02:00
Andreas Schildbach
cd75c6ab6b
PartialMerkleTree: divorce from Message
...
It is never sent on its own, so it doesn't need to be a `Message`.
* Static constructor `read()` replaces the native constructor that deserialized
from a payload.
* `write()` helper replaces `bitcoinSerializeToStream()`.
* `serialize()` and `getMessageSize()` helpers replace `bitcoinSerialize()`.
Includes a test.
2023-04-13 00:13:24 +02:00
Sean Gilligan
ce07733bbf
Wallet: constructor use Network
rather than NetworkParameters
...
With deprecation.
2023-04-11 13:02:11 +02:00
Sean Gilligan
4b9981015c
ProtocolVersion: move to top-level class from NetworkParameters
...
* Rename `getBitcoinProtocolVersion()` to `intValue()`
* Deprecate `NetworkParameters.getProtocolVersionNum()`. This eliminates
what seems to be an unnecessary level of indirection.
* Add tests.
This will also help eliminate a dependency on `NetworkParameters` in some places.
2023-04-10 01:35:20 +02:00
Sean Gilligan
c4439db699
FakeTxBuilder: use Network
not NetworkParameters
2023-04-09 10:33:15 +02:00
Sean Gilligan
7ef88e709e
TransactionOutPoint: make hash
and index
immutable
...
* Make the two fields `final`
* Rename accessors to `hash()` and `index()`
* Provide deprecated stubs for the old "get" methods
2023-04-04 00:06:47 +02:00
Andreas Schildbach
fbc5185b5a
TransactionOutPoint: divorce from Message
...
It is never sent on its own, so it doesn't need to be a `Message`.
* A static constructur `read()` replaces the native constructor that deserialized
from a payload.
* A `write()` helper replace `bitcoinSerializeToStream()`.
* A `serialize()` helper replace `bitcoinSerialize()`.
* A `BYTES` constant replaces `getMessageSize()`.
This comes with a test.
2023-04-03 22:17:31 +02:00
Andreas Schildbach
4248804f82
Sha256Hash: migrate to byte[] serialize()
from byte[] getReversedBytes()
2023-04-03 22:12:51 +02:00
Andreas Schildbach
edf889306b
VarInt: migrate to byte[] serialize()
from byte[] encode()
2023-04-03 22:11:00 +02:00
Andreas Schildbach
fb9b578542
VersionMessage: move isBloomFilteringSupported()
to Peer
2023-04-03 19:07:55 +02:00
Andreas Schildbach
f2fa39ef3e
HeadersMessage: remove params
from constructors
2023-04-03 19:05:45 +02:00
Andreas Schildbach
c613a7d98a
Block, FilteredBlock: remove params
from constructors
2023-04-03 19:04:23 +02:00
Andreas Schildbach
f174e2350e
VersionMessage: inline helpers isWitnessSupported()
, hasBlockChain()
and hasLimitedBlockChain()
...
Our API is now fluent enough that we don't need them any more.
2023-04-03 17:53:49 +02:00
Andreas Schildbach
dedf478c66
Transaction: remove params
from constructors
2023-04-03 16:23:13 +02:00
Andreas Schildbach
c309994e99
FakeTxBuilder: don't create unnecessary transaction in makeSolvedTestBlock()
2023-04-02 17:29:41 +02:00
Andreas Schildbach
116194f39e
Stopwatch: introduce tool for measuring time mainly for log messages
...
The helpers from `TimeUtils` are affected by the mock clock, which
is not desired for debug output.
2023-04-01 23:34:09 +02:00
Sean Gilligan
772bccd5f8
MemoryBlockStore: construct with genesis block
...
It doesn't need an entire `NetworkParameters`.
2023-03-31 22:14:06 +02:00
Andreas Schildbach
81fb0c5acb
Transaction, TransactionInput, TransactionOutPoint: add static constructors for the elements of a coinbase
...
This should reduce misuse of the standard constructors.
2023-03-31 19:28:11 +02:00
Andreas Schildbach
eb531166ee
TransactionOutput: remove params
from constructors
...
To make this possible, a check for maximum value is removed.
2023-03-30 23:43:17 +02:00
Andreas Schildbach
dd07d2cf62
NetworkParameters: fix protocol version for BIP37 bloom filters
...
According to BIP111, the protocol version must be greater than 70000.
Since we use "greater or equals", 70001 is the correct number.
2023-03-30 23:39:12 +02:00
Andreas Schildbach
8aeb5d3b1c
TransactionInput: remove params
from constructors
2023-03-30 23:00:04 +02:00
Andreas Schildbach
f2376e3ba3
PartialMerkleTree: remove params
from constructors
2023-03-30 22:39:05 +02:00
Andreas Schildbach
773a9aeb4e
PeerAddress: remove params
from constructor
...
To make this possible, a port has to be specified in all cases.
2023-03-30 18:03:18 +02:00
Andreas Schildbach
57c9456ce8
TransactionOutPoint: remove params
from constructors
2023-03-30 01:42:50 +02:00