This new wallet scanner tries to move some of the code (excluding
decryption) into a new class called the WalletScanner. This will
act as the holding ground for new scanning related code. This doesn't
exactly clean up a lot of the code, but does start as the beginning of
an attempt to simplify the scanning code.
Most scanning code now exists in WalletScanner
Merged Wallet.scanTransactions() into Wallet.scan()
Renamed Wallet.updateHead() to Wallet.scan()
The ChainProcessor is no longer exposed publically
The wallet head now no longer returns anything meaningful in the getStatus()
RPC.
Effectively deleted wallet/rescanAccount in favor of wallet/rescan. It rescans all accounts and doesn't apply to one account. Also changed request input.
wallet/rescan nowalways aborts a previous scan no matter what. This is to make the purpose of this command more simple. If you call rescan it WILL rescan.
Replaced wallet/rescanAccount RPC with wallet/rescan
RPC node/getStatus accounts.head.hashandaccounts.head.sequenceare always""and-1` respectively. The head and sequence is no longer returned because there is no longer a single wallet head. Each account has their own head.
Summary
This new wallet scanner tries to move some of the code (excluding decryption) into a new class called the WalletScanner. This will act as the holding ground for new scanning related code. This doesn't exactly clean up a lot of the code, but does start as the beginning of an attempt to simplify the scanning code.
wallet/rescanAccount
in favor ofwallet/rescan
. It rescans all accounts and doesn't apply to one account. Also changed request input.wallet/rescan
nowalways aborts a previous scan no matter what. This is to make the purpose of this command more simple. If you call rescan it WILL rescan.Fixes IFL-2570
Testing Plan
Documentation
Documentation added here https://github.com/iron-fish/website/pull/704
Breaking Change
wallet/rescanAccount
RPC withwallet/rescan
node/getStatus
accounts.head.hashand
accounts.head.sequenceare always
""and
-1` respectively. The head and sequence is no longer returned because there is no longer a single wallet head. Each account has their own head.