Bitcoin Core  27.99.0
P2P Digital Currency
dummywallet.cpp
Go to the documentation of this file.
1 // Copyright (c) 2018-2021 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 {LogPrintf("No wallet support compiled in!\n");}
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  "-paytxfee=<amt>",
42  "-signer=<cmd>",
43  "-spendzeroconfchange",
44  "-txconfirmtarget=<n>",
45  "-wallet=<path>",
46  "-walletbroadcast",
47  "-walletdir=<dir>",
48  "-walletnotify=<cmd>",
49  "-walletrbf",
50  "-dblogsize=<n>",
51  "-flushwallet",
52  "-privdb",
53  "-walletrejectlongchains",
54  "-walletcrosschain",
55  "-unsafesqlitesync",
56  });
57 }
58 
60 
61 namespace interfaces {
62 
63 std::unique_ptr<WalletLoader> MakeWalletLoader(Chain& chain, ArgsManager& args)
64 {
65  throw std::logic_error("Wallet function called in non-wallet build.");
66 }
67 
68 } // namespace interfaces
ArgsManager & args
Definition: bitcoind.cpp:268
void AddHiddenArgs(const std::vector< std::string > &args)
Add many hidden arguments.
Definition: args.cpp:583
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 AddWalletOptions(ArgsManager &argsman) const override
Get wallet help string.
Definition: dummywallet.cpp:27
void Construct(node::NodeContext &node) const override
Add wallets that should be opened to list of chain clients.
Definition: dummywallet.cpp:24
Interface giving clients (wallet processes, maybe other analysis tools in the future) ability to acce...
Definition: chain.h:124
const WalletInitInterface & g_wallet_init_interface
Definition: dummywallet.cpp:59
#define LogPrintf(...)
Definition: logging.h:245
std::unique_ptr< WalletLoader > MakeWalletLoader(Chain &chain, ArgsManager &args)
Return implementation of ChainClient interface for a wallet loader.
Definition: dummywallet.cpp:63
Definition: init.h:25
NodeContext struct containing references to chain state and connection state.
Definition: context.h:49