This adds the infrastructure BaseRequestHandler class that takes care
of converting bitcoin-cli arguments into a JSON-RPC request object, and
converting the reply into a JSON object that can be shown as result.
This is subsequently used to handle the -getinfo option, which sends
a JSON-RPC batch request to the RPC server with
["getnetworkinfo", "getblockchaininfo", "getwalletinfo"],
and after reply combines the result into what looks like a getinfo
result.
There have been some requests for a client-side getinfo and this
is my PoC of how to do it. If this is considered a good idea
some of the logic could be moved up to rpcclient.cpp and
used in the GUI console as well.
Extra-Author: Andrew Chow <achow101@gmail.com>
Add test for bitcoin-cli -getinfo
Extra-Author: Andrew Chow <achow101@gmail.com>
Backport of PR10871
https://github.com/bitcoin/bitcoin/pull/10871
Completes T586