Bitcoin Core  22.99.0
P2P Digital Currency
dummywallet.cpp
Go to the documentation of this file.
1 // Copyright (c) 2018-2020 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 <util/system.h>
6 #include <walletinitinterface.h>
7 
8 class CWallet;
9 
10 namespace interfaces {
11 class Chain;
12 class Handler;
13 class Wallet;
14 }
15 
17 public:
18 
19  bool HasWalletSupport() const override {return false;}
20  void AddWalletOptions(ArgsManager& argsman) const override;
21  bool ParameterInteraction() const override {return true;}
22  void Construct(NodeContext& node) const override {LogPrintf("No wallet support compiled in!\n");}
23 };
24 
26 {
27  argsman.AddHiddenArgs({
28  "-addresstype",
29  "-avoidpartialspends",
30  "-changetype",
31  "-disablewallet",
32  "-discardfee=<amt>",
33  "-fallbackfee=<amt>",
34  "-keypool=<n>",
35  "-maxapsfee=<n>",
36  "-maxtxfee=<amt>",
37  "-mintxfee=<amt>",
38  "-paytxfee=<amt>",
39  "-rescan",
40  "-salvagewallet",
41  "-signer=<cmd>",
42  "-spendzeroconfchange",
43  "-txconfirmtarget=<n>",
44  "-wallet=<path>",
45  "-walletbroadcast",
46  "-walletdir=<dir>",
47  "-walletnotify=<cmd>",
48  "-walletrbf",
49  "-dblogsize=<n>",
50  "-flushwallet",
51  "-privdb",
52  "-walletrejectlongchains",
53  "-unsafesqlitesync",
54  });
55 }
56 
58 
59 namespace interfaces {
60 
61 std::unique_ptr<Wallet> MakeWallet(const std::shared_ptr<CWallet>& wallet)
62 {
63  throw std::logic_error("Wallet function called in non-wallet build.");
64 }
65 
66 } // namespace interfaces
interfaces
Definition: dummywallet.cpp:10
ArgsManager::AddHiddenArgs
void AddHiddenArgs(const std::vector< std::string > &args)
Add many hidden arguments.
Definition: system.cpp:661
interfaces::MakeWallet
std::unique_ptr< Wallet > MakeWallet(const std::shared_ptr< CWallet > &wallet)
Return implementation of Wallet interface.
Definition: dummywallet.cpp:61
wallet
Definition: interfaces.cpp:47
DummyWalletInit::Construct
void Construct(NodeContext &node) const override
Add wallets that should be opened to list of chain clients.
Definition: dummywallet.cpp:22
interfaces::Chain
Interface giving clients (wallet processes, maybe other analysis tools in the future) ability to acce...
Definition: chain.h:89
WalletInitInterface
Definition: walletinitinterface.h:12
DummyWalletInit::AddWalletOptions
void AddWalletOptions(ArgsManager &argsman) const override
Get wallet help string.
Definition: dummywallet.cpp:25
DummyWalletInit::ParameterInteraction
bool ParameterInteraction() const override
Check wallet parameter interaction.
Definition: dummywallet.cpp:21
LogPrintf
#define LogPrintf(...)
Definition: logging.h:184
walletinitinterface.h
interfaces::Wallet
Interface for accessing a wallet.
Definition: wallet.h:52
DummyWalletInit
Definition: dummywallet.cpp:16
system.h
DummyWalletInit::HasWalletSupport
bool HasWalletSupport() const override
Is the wallet component enabled.
Definition: dummywallet.cpp:19
ArgsManager
Definition: system.h:158
CWallet
A CWallet maintains a set of transactions and balances, and provides the ability to create new transa...
Definition: wallet.h:226
node
Definition: interfaces.cpp:68
g_wallet_init_interface
const WalletInitInterface & g_wallet_init_interface
Definition: dummywallet.cpp:57
interfaces::Handler
Generic interface for managing an event handler or callback function registered with another interfac...
Definition: handler.h:22
NodeContext
NodeContext struct containing references to chain state and connection state.
Definition: context.h:39