multi: add DecorateInputs to WalletController interface

This commit adds the new DecorateInputs method of the base wallet to the
WalletController interface.
This commit is contained in:
Oliver Gugger 2024-02-06 12:25:54 +01:00
parent 90c2926fdf
commit 17645cd196
No known key found for this signature in database
GPG Key ID: 8E4256593F177720
4 changed files with 28 additions and 0 deletions

View File

@ -227,6 +227,11 @@ func (w *WalletController) FinalizePsbt(_ *psbt.Packet, _ string) error {
return nil
}
// DecorateInputs currently does nothing.
func (w *WalletController) DecorateInputs(*psbt.Packet, bool) error {
return nil
}
// PublishTransaction sends a transaction to the PublishedTransactions chan.
func (w *WalletController) PublishTransaction(tx *wire.MsgTx, _ string) error {
w.PublishedTransactions <- tx

View File

@ -596,6 +596,18 @@ func (b *BtcWallet) FinalizePsbt(packet *psbt.Packet, accountName string) error
return b.wallet.FinalizePsbt(keyScope, accountNum, packet)
}
// DecorateInputs fetches the UTXO information of all inputs it can identify and
// adds the required information to the package's inputs. The failOnUnknown
// boolean controls whether the method should return an error if it cannot
// identify an input or if it should just skip it.
//
// This is a part of the WalletController interface.
func (b *BtcWallet) DecorateInputs(packet *psbt.Packet,
failOnUnknown bool) error {
return b.wallet.DecorateInputs(packet, failOnUnknown)
}
// lookupFirstCustomAccount returns the first custom account found. In theory,
// there should be only one custom account for the given name. However, due to a
// lack of check, users could have created custom accounts with various key

View File

@ -501,6 +501,12 @@ type WalletController interface {
// finalized successfully.
FinalizePsbt(packet *psbt.Packet, account string) error
// DecorateInputs fetches the UTXO information of all inputs it can
// identify and adds the required information to the package's inputs.
// The failOnUnknown boolean controls whether the method should return
// an error if it cannot identify an input or if it should just skip it.
DecorateInputs(packet *psbt.Packet, failOnUnknown bool) error
// SubscribeTransactions returns a TransactionSubscription client which
// is capable of receiving async notifications as new transactions
// related to the wallet are seen within the network, or found in

View File

@ -235,6 +235,11 @@ func (w *mockWalletController) FinalizePsbt(_ *psbt.Packet, _ string) error {
return nil
}
// DecorateInputs currently does nothing.
func (w *mockWalletController) DecorateInputs(*psbt.Packet, bool) error {
return nil
}
// PublishTransaction sends a transaction to the PublishedTransactions chan.
func (w *mockWalletController) PublishTransaction(tx *wire.MsgTx,
_ string) error {