Commit graph

3788 commits

Author SHA1 Message Date
Sean Gilligan
2f9ce85e07 Wallet: add more diagnostic info to CouldNotAdjustDownwards exception
Add `output.value` and calculated `nonDustValue` to the exceptions message
string. Provide those values to the constructor in `calculateFee`

Add a constructor to parent class that takes a message String.
2023-08-09 11:14:44 +02:00
Sean Gilligan
b2b8c0a4a3 Transaction: use _ to separate thousands in constants 2023-08-09 10:42:24 +02:00
Sean Gilligan
fa323f745e TransactionOutput: simplify method isDust()
Replace `if` with boolean logic and revise related comment.
2023-08-09 10:32:27 +02:00
Andreas Schildbach
f907a6b86f Block: convert an if into expression with ternary operator 2023-08-09 00:51:36 +02:00
Andreas Schildbach
4e91a274d9 Block: annotate and document the null transactions case for main constructor 2023-08-09 00:47:52 +02:00
Sean Gilligan
098e268808 MainNetParams, TestNet3Params, SigNetParams, RegTestParams: migrate GENESIS_TIME constants to Instant 2023-08-09 00:40:25 +02:00
Sean Gilligan
371b90b934 Block: use ArrayList consistently for transactions field 2023-08-08 22:30:07 +02:00
Sean Gilligan
ce3af91c85 Block: make field version final 2023-08-08 22:09:47 +02:00
Sean Gilligan
1230c984d2 Peer: convert an if-else into expression with ternary operator 2023-08-08 21:51:42 +02:00
Sean Gilligan
e7bc376a8d Peer: extract buildBlockLocator() to private method 2023-08-08 21:46:49 +02:00
Sean Gilligan
690f5149c0 BlockLocator: functional-style hashCode() calculation
Use mapToInt/reduce.
2023-08-08 21:40:48 +02:00
Sean Gilligan
7aeffc4de0 Wallet: extract private method estimateVirtualBytesForSigning(Script) for estimating one script 2023-08-08 21:34:25 +02:00
Sean Gilligan
ff6ee607bc Wallet: pass outputs to estimateVirtualBytesForSigning() rather than the CoinSelector 2023-08-08 21:30:42 +02:00
Sean Gilligan
12a9ea1612 Wallet: functional-style estimateVirtualBytesForSigning() 2023-08-08 21:28:03 +02:00
Sean Gilligan
781bd56b55 Wallet: extract common code into private estimateFees() method 2023-08-08 21:25:00 +02:00
Sean Gilligan
97cd7d44fb Wallet: deprecate getParms() and getNetworkParameters() 2023-08-08 21:16:56 +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
9bbb6b39e3 Peer: fix and clarify comment about putting genesis hash into BlockLocator 2023-08-08 20:58:44 +02:00
Sean Gilligan
148a40b2ed TransactionInput: don't use setParent() in constructor 2023-08-08 19:55:50 +02:00
Sean Gilligan
7a558fb557 TransactionInput: use private constructor via this() in constructor for unsigned input 2023-08-08 19:52:48 +02:00
Sean Gilligan
1ce554c901 TransactionInput: don't call super() in constructor
`Object` is the superclass now.
2023-08-08 19:47:57 +02:00
Sean Gilligan
50d678d3e2 TransactionInput: make parent field private 2023-08-08 19:38:54 +02:00
Andreas Schildbach
0a58d0a5c3 TransactionInput: convert an if-else into expression with ternary operator 2023-08-08 11:54:34 +02:00
Sean Gilligan
2b68d8da8e ServicesTest: add missing package declaration 2023-08-08 11:45:21 +02:00
Andreas Schildbach
50c0f2eae9 VersionMessage: re-add service bit constants as deprecated 2023-08-01 15:13:05 +02:00
Sean Gilligan
b0b0b02683 Block: simplify initialization of genesisTxScriptPubKeyBytes
Use `ScriptBuilder` rather than static initializer and `ByteArrayOutputStream`.
2023-08-01 15:09:37 +02:00
Sean Gilligan
0b57bbc701 Wallet: fix two deprecated @link in JavaDoc 2023-08-01 15:02:02 +02:00
Andreas Schildbach
3dbaaa23b0 build.gradle: update Guava to 32.1.2-android 2023-08-01 11:15:44 +02:00
Andreas Schildbach
c1307c1190 build.gradle: update Bouncy Castle to 1.76 2023-07-31 11:34:36 +02:00
Sean Gilligan
36dce3d9d5 wallet.proto, paymentrequest.proto: move generated files to dedicated packages
* Modify the `java_package` setting in our two `.proto` source files
 * Move 2 existing generated-but-checked-in Protos.java files to
   dedicated packages (i.e. packages without hand-coded "artisanal" files)

This is a step towards more compatibility with ProtoBuf tooling which
sometimes likes to delete the generated files and:

 > can't distinguish between "old generated code" and "your artisan source files."

and more importantly it is a step towards fixing Gradle 8 caching issues.
2023-07-28 21:55:26 +02:00
Andreas Schildbach
a7446b65ae Prepare 0.17-SNAPSHOT 2023-07-28 10:46:14 +02:00
Andreas Schildbach
ab91a94695 Tag 0.17-alpha2 2023-07-27 21:36:45 +02:00
Sean Gilligan
7efab37c6c DnsDiscovery, MultiplexingDiscovery: use Network in constructors 2023-07-27 10:56:06 +02:00
Sean Gilligan
27cb2fc3cc TestWithWallet, WalletTest, DefaultCoinSelectorTest: rename and import some network constants
This also removes some usage of deprecated methods.
2023-07-20 19:51:50 +02:00
Sean Gilligan
dead2c74ab AddressParser: simpler address parsing by making it a @FunctionalInterface
We`re making `AddressParser` the `@FunctionalInterface` and a nested class
is used to define an `AddressParserProvider`
2023-07-18 23:54:59 +02:00
Sean Gilligan
39c34186cc BlockChain: use Network in constructors
Constructors that take NetworkParameters are marked as @VisibleForTesting.
This is because of the special UNITTEST NetworkParameters that is required for
certain tests.
2023-07-18 23:10:36 +02:00
Andreas Schildbach
02fd2f036a build.gradle: update equalsverifier to 3.15 2023-07-16 12:45:39 +02:00
Andreas Schildbach
98fcb0c840 build.gradle: update Jackson to 2.15.2 2023-07-16 12:37:30 +02:00
Sean Gilligan
1e1bf41f9d build.gradle: update Bouncy Castle to 1.75 2023-07-14 11:41:01 +02:00
Andreas Schildbach
f6cebd33bd build.gradle: update Guava to 32.1.1-android 2023-07-10 11:16:51 +02:00
Andreas Schildbach
c68cd2e616 TransactionOutput: fix regression with calculating getMinNonDustValue() for the multisig case 2023-07-05 16:10:07 -07:00
Sean Gilligan
8c3cf0acd5 Threading: use BlockingQueue interface internally
This makes it clear that we're not using specific features
of the `LinkedBlockingQueue` implementation class.
2023-06-13 21:37:46 +02:00
Sean Gilligan
d05d44c8c3 Threading: use ExecutorService for THREAD_POOL
Guava's `ListeningExecutorService` is no longer needed.
Update type of private executor in PaymentSession to match.
2023-06-13 21:33:55 +02:00
Andreas Schildbach
5c5b2969d7 Wallet: extract local variables tempParentFile and destParentFile in method saveToFile()
This is meant to make it a bit clearer why a NullPointerException would occur.
2023-06-13 09:04:00 +02:00
Andreas Schildbach
87a2892bca Wallet: improve JavaDoc of method saveToFile() 2023-06-13 08:54:41 +02:00
Andreas Schildbach
097bb06cb0 Wallet: rename saveToFile() method parameter temp to tempFile 2023-06-13 08:48:40 +02:00
Sean Gilligan
6126821968 Bech32: add JavaDoc headers to public types that were missing them 2023-06-09 12:06:02 +02:00
Sean Gilligan
eec12bae44 Bech32: replace <p></p> XHTML-style header with <p> HTML5-style header 2023-06-09 12:06:02 +02:00
Sean Gilligan
828cf58ab1 package-info.java: update package JavaDoc 2023-06-09 12:05:58 +02:00
Sean Gilligan
3429737f81 AddressParser: add JavaDoc to interface Strict 2023-06-09 11:50:46 +02:00