Browse Source

[wallet] [rpc] Add listwallets RPC

This commit adds a listwallets RPC, which lists the names of the
currently loaded wallets. This command intentionally shows no
information about the wallet other then the name. Information on
individual wallets can be obtained using the getwalletinfo RPC.
0.15
John Newbery 7 years ago
parent
commit
9508761ed6
  1. 34
      src/wallet/rpcwallet.cpp

34
src/wallet/rpcwallet.cpp

@ -2491,6 +2491,39 @@ UniValue getwalletinfo(const JSONRPCRequest& request) @@ -2491,6 +2491,39 @@ UniValue getwalletinfo(const JSONRPCRequest& request)
return obj;
}
UniValue listwallets(const JSONRPCRequest& request)
{
if (request.fHelp || request.params.size() != 0)
throw std::runtime_error(
"listwallets\n"
"Returns a list of currently loaded wallets.\n"
"For full information on the wallet, use \"getwalletinfo\"\n"
"\nResult:\n"
"[ (json array of strings)\n"
" \"walletname\" (string) the wallet name\n"
" ...\n"
"]\n"
"\nExamples:\n"
+ HelpExampleCli("listwallets", "")
+ HelpExampleRpc("listwallets", "")
);
UniValue obj(UniValue::VARR);
for (CWalletRef pwallet : vpwallets) {
if (!EnsureWalletIsAvailable(pwallet, request.fHelp)) {
return NullUniValue;
}
LOCK(pwallet->cs_wallet);
obj.push_back(pwallet->GetName());
}
return obj;
}
UniValue resendwallettransactions(const JSONRPCRequest& request)
{
CWallet * const pwallet = GetWalletForJSONRPCRequest(request);
@ -3087,6 +3120,7 @@ static const CRPCCommand commands[] = @@ -3087,6 +3120,7 @@ static const CRPCCommand commands[] =
{ "wallet", "listsinceblock", &listsinceblock, false, {"blockhash","target_confirmations","include_watchonly"} },
{ "wallet", "listtransactions", &listtransactions, false, {"account","count","skip","include_watchonly"} },
{ "wallet", "listunspent", &listunspent, false, {"minconf","maxconf","addresses","include_unsafe","query_options"} },
{ "wallet", "listwallets", &listwallets, true, {} },
{ "wallet", "lockunspent", &lockunspent, true, {"unlock","transactions"} },
{ "wallet", "move", &movecmd, false, {"fromaccount","toaccount","amount","minconf","comment"} },
{ "wallet", "sendfrom", &sendfrom, false, {"fromaccount","toaddress","amount","minconf","comment","comment_to"} },

Loading…
Cancel
Save