rpc: personal_listWallets (#748)

* Problem: need to add JSON-RPC endpoint personal_listWallets

Closes #745

* wallet level that manages accounts is not supported by keyring interface, will return nil

* changelog entry

* fix lint failure by exposing RawWallet as public

* fix notes typo
This commit is contained in:
Adu
2021-11-15 11:20:59 +00:00
committed by GitHub
parent 32c905ab87
commit f42f339d05
3 changed files with 25 additions and 0 deletions
+16
View File
@@ -238,3 +238,19 @@ func (api *PrivateAccountAPI) InitializeWallet(_ context.Context, url string) (s
// TODO: Smartcard wallet not supported yet, refer to: https://github.com/ethereum/go-ethereum/blob/master/accounts/scwallet/README.md
return "", fmt.Errorf("smartcard wallet not supported yet")
}
// RawWallet is a JSON representation of an accounts.Wallet interface, with its
// data contents extracted into plain fields.
type RawWallet struct {
URL string `json:"url"`
Status string `json:"status"`
Failure string `json:"failure,omitempty"`
Accounts []accounts.Account `json:"accounts,omitempty"`
}
// ListWallets will return a list of wallets this node manages.
func (api *PrivateAccountAPI) ListWallets() []RawWallet {
api.logger.Debug("personal_ListWallets")
api.logger.Info("currently wallet level that manages accounts is not supported")
return ([]RawWallet)(nil)
}