diff options
author | Russell Yanofsky <russ@yanofsky.org> | 2020-05-28 09:48:30 -0400 |
---|---|---|
committer | Russell Yanofsky <russ@yanofsky.org> | 2020-08-27 14:33:00 -0400 |
commit | e4f435047121886edb6e6a6c4e4998e44ed2e36a (patch) | |
tree | f61715cecd2998ef2f841946b3637645813d606d /src/wallet/init.cpp | |
parent | b266b3e0bf29d0f3d5deaeec62d57c5025b35525 (diff) |
refactor: Move wallet methods out of chain.h and node.h
Add WalletClient interface so node interface is cleaner and don't need
wallet-specific methods.
The new NodeContext::wallet_client pointer will also be needed to eliminate
global wallet variables like ::vpwallets, because createWallet(), loadWallet(),
getWallets(), etc methods called by the GUI need a way to get a reference to
the list of open wallets if it is no longer a global variable.
Also tweaks splash screen registration for load wallet events to be delayed
until after wallet client is created.
Diffstat (limited to 'src/wallet/init.cpp')
-rw-r--r-- | src/wallet/init.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/wallet/init.cpp b/src/wallet/init.cpp index bf05ef844a..1456e1595e 100644 --- a/src/wallet/init.cpp +++ b/src/wallet/init.cpp @@ -5,6 +5,7 @@ #include <init.h> #include <interfaces/chain.h> +#include <interfaces/wallet.h> #include <net.h> #include <node/context.h> #include <node/ui_interface.h> @@ -129,5 +130,7 @@ void WalletInit::Construct(NodeContext& node) const settings.rw_settings["wallet"] = wallets; }); } - node.chain_clients.emplace_back(interfaces::MakeWalletClient(*node.chain, args, args.GetArgs("-wallet"))); + auto wallet_client = interfaces::MakeWalletClient(*node.chain, args, args.GetArgs("-wallet")); + node.wallet_client = wallet_client.get(); + node.chain_clients.emplace_back(std::move(wallet_client)); } |