Bitcoin
Public Member Functions | Private Attributes | List of all members
CRPCTable Class Reference

#include <server.h>

Public Member Functions

 CRPCTable ()
 
std::string help (const std::string &name, const JSONRPCRequest &helpreq) const
 
UniValue execute (const JSONRPCRequest &request) const
 
std::vector< std::string > listCommands () const
 
bool appendCommand (const std::string &name, const CRPCCommand *pcmd)
 
bool removeCommand (const std::string &name, const CRPCCommand *pcmd)
 

Private Attributes

std::map< std::string, std::vector< const CRPCCommand * > > mapCommands
 

Detailed Description

Bitcoin RPC command dispatcher.

Constructor & Destructor Documentation

◆ CRPCTable()

CRPCTable::CRPCTable ( )

Member Function Documentation

◆ appendCommand()

bool CRPCTable::appendCommand ( const std::string &  name,
const CRPCCommand pcmd 
)

Appends a CRPCCommand to the dispatch table.

Returns false if RPC server is already running (dump concurrency protection).

Commands with different method names but the same unique_id will be considered aliases, and only the first registered method name will show up in the help text command listing. Aliased commands do not have to have the same behavior. Server and client code can distinguish between calls based on method name, and aliased commands can also register different names, types, and numbers of parameters.

◆ execute()

UniValue CRPCTable::execute ( const JSONRPCRequest request) const

Execute a method.

Parameters
requestThe JSONRPCRequest to execute
Returns
Result of the call.
Exceptions
anexception (UniValue) when an error happens.

◆ help()

std::string CRPCTable::help ( const std::string &  name,
const JSONRPCRequest helpreq 
) const

◆ listCommands()

std::vector< std::string > CRPCTable::listCommands ( ) const

Returns a list of registered commands

Returns
List of registered commands.

◆ removeCommand()

bool CRPCTable::removeCommand ( const std::string &  name,
const CRPCCommand pcmd 
)

Member Data Documentation

◆ mapCommands

std::map<std::string, std::vector<const CRPCCommand*> > CRPCTable::mapCommands
private

The documentation for this class was generated from the following files: