Bitcoin Core  0.15.99
P2P Digital Currency
Public Member Functions | Private Attributes | List of all members
CRPCTable Class Reference

Bitcoin RPC command dispatcher. More...

#include <server.h>

Public Member Functions

 CRPCTable ()
 
const CRPCCommandoperator[] (const std::string &name) const
 
std::string help (const std::string &name, const JSONRPCRequest &helpreq) const
 Note: This interface may still be subject to change. More...
 
UniValue execute (const JSONRPCRequest &request) const
 Execute a method. More...
 
std::vector< std::string > listCommands () const
 Returns a list of registered commands. More...
 
bool appendCommand (const std::string &name, const CRPCCommand *pcmd)
 Appends a CRPCCommand to the dispatch table. More...
 

Private Attributes

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

Detailed Description

Bitcoin RPC command dispatcher.

Definition at line 143 of file server.h.

Constructor & Destructor Documentation

◆ CRPCTable()

CRPCTable::CRPCTable ( )

Definition at line 269 of file server.cpp.

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 cannot be overwritten (returns false).

Commands with different method names but the same callback function 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.

Definition at line 289 of file server.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ 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.

Definition at line 473 of file server.cpp.

Here is the call graph for this function:

◆ help()

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

Note: This interface may still be subject to change.

Definition at line 152 of file server.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ listCommands()

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

Returns a list of registered commands.

Returns
List of registered commands.

Definition at line 504 of file server.cpp.

◆ operator[]()

const CRPCCommand * CRPCTable::operator[] ( const std::string &  name) const

Definition at line 281 of file server.cpp.

Member Data Documentation

◆ mapCommands

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

Definition at line 146 of file server.h.


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