Bitcoin Core  31.0.0
P2P Digital Currency
dummywallet.cpp
Go to the documentation of this file.
1 // Copyright (c) 2018-present The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #include <common/args.h>
6 #include <logging.h>
7 #include <walletinitinterface.h>
8 
9 class ArgsManager;
10 
11 namespace interfaces {
12 class Chain;
13 class Handler;
14 class Wallet;
15 class WalletLoader;
16 }
17 
19 public:
20 
21  bool HasWalletSupport() const override {return false;}
22  void AddWalletOptions(ArgsManager& argsman) const override;
23  bool ParameterInteraction() const override {return true;}
24  void Construct(node::NodeContext& node) const override { LogInfo("No wallet support compiled in!"); }
25 };
26 
28 {
29  argsman.AddHiddenArgs({
30  "-addresstype",
31  "-avoidpartialspends",
32  "-changetype",
33  "-consolidatefeerate=<amt>",
34  "-disablewallet",
35  "-discardfee=<amt>",
36  "-fallbackfee=<amt>",
37  "-keypool=<n>",
38  "-maxapsfee=<n>",
39  "-maxtxfee=<amt>",
40  "-mintxfee=<amt>",
41  "-signer=<cmd>",
42  "-spendzeroconfchange",
43  "-txconfirmtarget=<n>",
44  "-wallet=<path>",
45  "-walletbroadcast",
46  "-walletdir=<dir>",
47  "-walletnotify=<cmd>",
48  "-walletrbf",
49  "-walletrejectlongchains",
50  "-walletcrosschain",
51  "-unsafesqlitesync",
52  });
53 }
54 
56 
57 namespace interfaces {
58 
59 std::unique_ptr<WalletLoader> MakeWalletLoader(Chain& chain, ArgsManager& args)
60 {
61  throw std::logic_error("Wallet function called in non-wallet build.");
62 }
63 
64 } // namespace interfaces
bool ParameterInteraction() const override
Check wallet parameter interaction.
Definition: dummywallet.cpp:23
bool HasWalletSupport() const override
Is the wallet component enabled.
Definition: dummywallet.cpp:21
void AddHiddenArgs(const std::vector< std::string > &args)
Add many hidden arguments.
Definition: args.cpp:610
void Construct(node::NodeContext &node) const override
Add wallets that should be opened to list of chain clients.
Definition: dummywallet.cpp:24
NodeContext struct containing references to chain state and connection state.
Definition: context.h:56
std::unique_ptr< WalletLoader > MakeWalletLoader(Chain &chain, ArgsManager &args)
Return implementation of ChainClient interface for a wallet loader.
Definition: dummywallet.cpp:59
ArgsManager & args
Definition: bitcoind.cpp:277
#define LogInfo(...)
Definition: log.h:95
Definition: messages.h:21
const WalletInitInterface & g_wallet_init_interface
Definition: dummywallet.cpp:55
Interface giving clients (wallet processes, maybe other analysis tools in the future) ability to acce...
Definition: chain.h:117
void AddWalletOptions(ArgsManager &argsman) const override
Get wallet help string.
Definition: dummywallet.cpp:27