Sean Gilligan
dae9e0fff6
BitcoinNetwork: simplify declaration of alternateNames
2022-07-14 23:06:10 +02:00
Andreas Schildbach
fb90c4458d
Context: remove network parameters
...
This is the first step in the goal of making Context optional again,
using it only for configuration of a test environment.
2022-07-14 01:59:49 +02:00
Sean Gilligan
9f02cd2af3
WalletAppKit: add constructor with BitcoinNetwork, deprecate others
...
* WalletAppKit: add a constructor that takes a BitcoinNetwork
* WalletAppKit: deprecate constructors taking netParams or Context
* WalletAppKit: add an accessor for network()
* Update examples, tools, and wallettemplate to use the new constructor
2022-07-13 22:59:17 +02:00
Sean Gilligan
e98b5e68fc
NetworkParameters: make network final
...
* Make the private member `network` final.
* Constructor requires a network
* Update super() calls in subclasses
2022-07-13 22:20:35 +02:00
Andreas Schildbach
50ccb6b8fc
Network: rename MAIN to MAINNET and TEST to TESTNET
...
The old, shorter names can be used as an alternate name so they will still be accepted for user-facing input.
2022-07-13 22:04:31 +02:00
Sean Gilligan
567d88e13f
Network: uriScheme moved from NetworkParameters
2022-07-13 20:19:26 +02:00
Andreas Schildbach
932a871f86
BitcoinNetwork: allow a number of common alternate network names in fromString()
...
Also adds tests.
2022-07-12 15:15:38 +02:00
Sean Gilligan
60bad143ff
BitcoinNetwork: simplify/standardize static factories and use lowercase strings for input/output
...
Also adds tests.
2022-07-12 01:05:04 +02:00
Sean Gilligan
b375a96565
BitcoinNetwork: of()/find() get by name, ofId()/findById() by ID
2022-07-11 09:43:05 +02:00
Sean Gilligan
e78bb3438e
NetworkParameters: deprecate getMonetaryFormat()
2022-07-08 08:21:58 -07:00
Sean Gilligan
80595e1a58
Network: hasMaxMoney(), maxMoney() moved from NetworkParameters
...
Deprecate methods in NetworkParameters/AbstractBitcoinNetParams.
2022-07-08 11:15:00 +02:00
Sean Gilligan
a4299dfb39
Network: add interface and implement in BitcoinNetwork enum
2022-07-06 17:26:00 +02:00
Sean Gilligan
089f9c45e4
Wallet.SendRequest: construct from TransactionBroadcast only
...
Simplify the constructor for Wallet.SendRequest to only take
a TransactionBroadcast object. The transaction was inside
the TransactionBroadcast object anyway, we just had to create
an accessor.
This paves the way for removing SendResult entirely and replacing
it with TransactionBroadcast.
2022-07-06 17:02:22 +02:00
Sean Gilligan
47eb2620cc
o.b.c.net: TimeoutHandler interface replaces abstract base class
...
* Create TimeoutHandler interface
* Create standalone SocketTimeoutTask to implement it
* Deprecate and replace AbstractTimeoutHandler
This simplifies the inheritance of PeerSocketHandler and NioClient and
will enable future refactoring.
2022-07-06 15:39:53 +02:00
Sean Gilligan
458b777d51
PeerGroup: use standard ScheduledExecutorService instead of Listenable
...
Since we migrated to (Listenable)CompletableFuture in startAync/stopAsync
we no longer need it.
2022-07-06 15:27:27 +02:00
Sean Gilligan
043993645d
TaggableObject, BaseTaggableObject: deprecate setting and getting tags on objects
...
The only known usage of this feature is in the JavaFX wallettemplate where
it is used to save the estimated elapsed time for deriving a key for purposes
of displaying a progress bar.
2022-07-06 15:18:26 +02:00
Sean Gilligan
b8729f2fbd
Network: rename to BitcoinNetwork
...
This is done in preparation for introducing a `Network` interface as a parent,
coming in a future commit.
2022-06-27 12:11:25 +02:00
Sean Gilligan
3bb2af795f
Address: deprecate getParameters() and find alternatives for its usages
...
* Add NetworkParameters.fromAddress() method to consolidate the use cases
where an Address is used to get a NetworkParameters
* Deprecate NetworkParameters.fromAddress() to indicate code must be rewritten
* This also removes one dependency on NetworkParameters in Address and helps
prepare for moving Address to `o.b.base`
2022-06-26 22:05:44 +02:00
Sean Gilligan
bfa6536942
org.bitcoinj.base: move Network to base
2022-06-26 20:05:09 +02:00
Sean Gilligan
26117bbda8
Address: add network() helper to allow migrating away from using NetworkParameters
2022-06-26 19:49:20 +02:00
Sean Gilligan
1d5e752917
Address: implement PrefixedChecksummedBytes inline, rather than extend it
...
In preparation for future refactoring of Address, we don't want Address
tied to a base class with dependencies on o.b.core or NetworkParameters.
We also want the option of making Address itself an interface in the future.
This results in some code duplication but there is no strong need for or
use of polymorphism in the subclasses of PrefixedChecksummedBytes.
Since equals() was copied from NetworkParameters into Address, create AddressTest
and copy the equals() test from PrefixedChecksummedBytesTest.
2022-06-26 19:36:29 +02:00
Andreas Schildbach
bd002594eb
Context: remove useless Context instantiations from a few tests
2022-06-26 17:26:04 +02:00
Andreas Schildbach
76c8d71e44
Context: fix implicit context propagation by constructor
...
We used to do this a long time ago, but switched the codebase to explicit propagation.
Generally, constructors should not have any side-effects.
2022-06-26 17:09:15 +02:00
Sean Gilligan
ddfaa606af
ScriptType: add ID string, deprecate numeric ID
2022-06-26 16:03:16 +02:00
Sean Gilligan
a40ca0ce26
NetworkParameters: deprecate/move fromID()
...
Deprecate static fromID() method that only knows about Bitcoin networks and
move to AbstractBitcoinNetParams.
2022-06-25 14:52:18 -07:00
Sean Gilligan
fc036c6fd0
NetworkParameters: fix JavaDoc error that breaks build
...
Removing the whole line because the suggested method doesn't exist yet.
2022-06-25 22:58:09 +02:00
Sean Gilligan
ce103ed2c3
NetworkParameters: move payment protocol related IDs and methods to PaymentProtocol
...
The old symbols are marked as deprecated.
2022-06-25 18:26:37 +02:00
Sean Gilligan
a0b0392093
NetworkParameters: depend on Network enum, rather the reverse
...
This change makes NetworkParameters use and depend upon Network instead
of the reverse. This will allow Network to be moved to `base`.
Define `UnitTestParams` as being on the `TEST` network. We must choose
a `Network` property for `UnitTestParams` and I have learned through trial-and-error
that `TEST` is the correct choice.
2022-06-24 12:30:40 +02:00
Andreas Schildbach
7db1521b6c
ByteUtils: fix integer shift implicitly cast to long problem
2022-06-23 17:06:33 +02:00
Andreas Schildbach
8ab62e7149
ByteUtils: fix redundant type casts
2022-06-23 17:06:33 +02:00
Andreas Schildbach
91f22138e8
ByteUtils: fix long literal ends with lowercase l
problems
2022-06-23 17:06:28 +02:00
Sean Gilligan
ef870fcbc8
PrefixedChecksummedBytes: remove unused transient keyword
...
Now that serialization support has been removed from PrefixedChecksummedBytes,
we no longer need the `transient` keyword.
2022-06-23 16:54:27 +02:00
Sean Gilligan
44d0576ce4
org.bitcoinj.base: move Base58, Bech32, AddressFormatException to base
2022-06-23 11:48:01 +02:00
Sean Gilligan
0645a835de
org.bitcoinj.base: move Script.ScriptType to a top level type in base
2022-06-22 18:13:34 +02:00
Sean Gilligan
93cc0ac9c5
org.bitcoinj.base: move Sha256Hash and byte/math Utils members to base
...
* move o.b.core.Sha256Hash to o.b.base.Sha256Hash
* move byte and math utility methods from o.b.core.Utils to a new
o.b.base.ByteUtils class
2022-06-22 17:40:50 +02:00
Sean Gilligan
84e737acdf
org.bitcoinj.base: introduce new package that provides fundamental types with minimal dependencies
...
This also moves Coin, Fiat, its parent Monetary and the related MonetaryFormat into the new base package.
See the provided package-info.java for details.
2022-06-21 19:25:47 +02:00
Sean Gilligan
a4ea1f62bb
BasicKeyChain, KeyChainGroup: functional earliest key creation time
2022-06-20 11:41:01 +02:00
Sean Gilligan
69ff779a82
DeterministicKey: deprecate serializeP*B58 methods with outputScriptType parameter
...
The reasons are explained in the added JavaDoc.
* Add deprecation and JavaDoc comments
2022-06-20 11:22:08 +02:00
Sean Gilligan
6688a472f1
KeyChainGroup: supportsDeterministicChains() without the 'is'
...
The JavaBean-style syntax is unnecessary and distracting here. Rename
the method and provide the old name as a deprecated method.
2022-06-19 13:43:06 +02:00
Sean Gilligan
4e5c00937f
Wallet: private listener lists as List type (was CopyOnWriteArrayList)
...
This simplifies the declaration and verifies that we're using the standard List
interface in all our code. The implementation remains unchanged.
2022-06-19 13:33:48 +02:00
Sean Gilligan
6671bc01c6
VarInt: make value
member private
2022-06-19 12:44:59 +02:00
Sean Gilligan
7e1be32369
Wallet.calculateAllSpendCandidates: make more functional
...
Use a filtered stream to generate an unmodifiable list.
2022-06-19 12:01:13 +02:00
Sean Gilligan
36ac6926e9
Wallet: minor JavaDoc improvements
2022-06-18 16:25:49 -07:00
Andreas Schildbach
24095fd9b8
NativeSecp256k1: deprecate native interface to libsecp256k1
...
This native implementation is unmaintained and untested for years.
2022-06-15 10:34:17 +02:00
Sean Gilligan
7f50aa78b3
org.bitcionj.jni: deprecate all classes
...
These native implementations have been unused and unmaintained for years.
2022-06-15 10:22:54 +02:00
Sean Gilligan
5ae7a42a9e
DeterministicKey: remove deprecated serializePublic/serializePrivate
...
Add a package-visible serialize() method annotated with @VisibleForTesting to
support existing tests.
2022-06-13 10:35:05 +02:00
Sean Gilligan
1aa1bf6d94
Remove all usage of Java Serialization
...
* Remove all implementations of `Serializable`
* Remove unit tests of Java serialization
2022-06-12 10:39:24 -07:00
Sean Gilligan
f6b3d82e8d
PrefixedChecksummedBytes: remove Cloneable
...
* Remove the `implements Cloneable` marker
* Remove the `@Override` of `clone()`
* Remove tests of `clone()` for the implementing classes
2022-06-12 18:35:24 +02:00
Sean Gilligan
8800840e7e
integration-test: move tests derived from TestWithNetworkConnections to integration-test submodule
2022-05-31 13:56:38 +02:00
Sean Gilligan
aafdbccbc5
FakeTxBuilder: move from src/test
to src/main
...
This will allow it to be used in both core tests and integration-test.
2022-05-24 22:52:16 +02:00