#include <xmlrpc_manager.h>
Classes | |
struct | FunctionInfo |
Public Member Functions | |
void | addASyncConnection (const ASyncXMLRPCConnectionPtr &conn) |
bool | bind (const std::string &function_name, const XMLRPCFunc &cb) |
uint32_t | getServerPort () const |
const std::string & | getServerURI () const |
Get the xmlrpc server URI of this node. More... | |
XmlRpc::XmlRpcClient * | getXMLRPCClient (const std::string &host, const int port, const std::string &uri) |
bool | isShuttingDown () |
void | releaseXMLRPCClient (XmlRpc::XmlRpcClient *c) |
void | removeASyncConnection (const ASyncXMLRPCConnectionPtr &conn) |
void | shutdown () |
void | start () |
void | unbind (const std::string &function_name) |
bool | validateXmlrpcResponse (const std::string &method, XmlRpc::XmlRpcValue &response, XmlRpc::XmlRpcValue &payload) |
Validate an XML/RPC response. More... | |
XMLRPCManager () | |
~XMLRPCManager () | |
Static Public Member Functions | |
static const XMLRPCManagerPtr & | instance () |
Private Types | |
typedef std::map< std::string, FunctionInfo > | M_StringToFuncInfo |
typedef std::vector< CachedXmlRpcClient > | V_CachedXmlRpcClient |
Private Member Functions | |
void | serverThreadFunc () |
Private Attributes | |
S_ASyncXMLRPCConnection | added_connections_ |
boost::mutex | added_connections_mutex_ |
V_CachedXmlRpcClient | clients_ |
boost::mutex | clients_mutex_ |
S_ASyncXMLRPCConnection | connections_ |
M_StringToFuncInfo | functions_ |
boost::mutex | functions_mutex_ |
ros::WallDuration | master_retry_timeout_ |
int | port_ |
S_ASyncXMLRPCConnection | removed_connections_ |
boost::mutex | removed_connections_mutex_ |
XmlRpc::XmlRpcServer | server_ |
boost::thread | server_thread_ |
bool | shutting_down_ |
volatile bool | unbind_requested_ |
std::string | uri_ |
Definition at line 94 of file xmlrpc_manager.h.
|
private |
Definition at line 169 of file xmlrpc_manager.h.
|
private |
Definition at line 147 of file xmlrpc_manager.h.
ros::XMLRPCManager::XMLRPCManager | ( | ) |
Definition at line 104 of file xmlrpc_manager.cpp.
ros::XMLRPCManager::~XMLRPCManager | ( | ) |
Definition at line 111 of file xmlrpc_manager.cpp.
void ros::XMLRPCManager::addASyncConnection | ( | const ASyncXMLRPCConnectionPtr & | conn | ) |
Definition at line 392 of file xmlrpc_manager.cpp.
bool ros::XMLRPCManager::bind | ( | const std::string & | function_name, |
const XMLRPCFunc & | cb | ||
) |
Definition at line 404 of file xmlrpc_manager.cpp.
|
inline |
Definition at line 119 of file xmlrpc_manager.h.
|
inline |
Get the xmlrpc server URI of this node.
Definition at line 118 of file xmlrpc_manager.h.
XmlRpcClient * ros::XMLRPCManager::getXMLRPCClient | ( | const std::string & | host, |
const int | port, | ||
const std::string & | uri | ||
) |
Definition at line 312 of file xmlrpc_manager.cpp.
|
static |
Definition at line 98 of file xmlrpc_manager.cpp.
|
inline |
Definition at line 133 of file xmlrpc_manager.h.
void ros::XMLRPCManager::releaseXMLRPCClient | ( | XmlRpc::XmlRpcClient * | c | ) |
Definition at line 367 of file xmlrpc_manager.cpp.
void ros::XMLRPCManager::removeASyncConnection | ( | const ASyncXMLRPCConnectionPtr & | conn | ) |
Definition at line 398 of file xmlrpc_manager.cpp.
|
private |
Definition at line 250 of file xmlrpc_manager.cpp.
void ros::XMLRPCManager::shutdown | ( | ) |
Definition at line 135 of file xmlrpc_manager.cpp.
void ros::XMLRPCManager::start | ( | ) |
Definition at line 116 of file xmlrpc_manager.cpp.
void ros::XMLRPCManager::unbind | ( | const std::string & | function_name | ) |
Definition at line 421 of file xmlrpc_manager.cpp.
bool ros::XMLRPCManager::validateXmlrpcResponse | ( | const std::string & | method, |
XmlRpc::XmlRpcValue & | response, | ||
XmlRpc::XmlRpcValue & | payload | ||
) |
Validate an XML/RPC response.
method | The RPC method that was invoked. |
response | The resonse that was received. |
payload | The payload that was received. |
Definition at line 202 of file xmlrpc_manager.cpp.
|
private |
Definition at line 155 of file xmlrpc_manager.h.
|
private |
Definition at line 156 of file xmlrpc_manager.h.
|
private |
Definition at line 148 of file xmlrpc_manager.h.
|
private |
Definition at line 149 of file xmlrpc_manager.h.
|
private |
Definition at line 160 of file xmlrpc_manager.h.
|
private |
Definition at line 171 of file xmlrpc_manager.h.
|
private |
Definition at line 170 of file xmlrpc_manager.h.
|
private |
Definition at line 153 of file xmlrpc_manager.h.
|
private |
Definition at line 139 of file xmlrpc_manager.h.
|
private |
Definition at line 157 of file xmlrpc_manager.h.
|
private |
Definition at line 158 of file xmlrpc_manager.h.
|
private |
Definition at line 146 of file xmlrpc_manager.h.
|
private |
Definition at line 140 of file xmlrpc_manager.h.
|
private |
Definition at line 151 of file xmlrpc_manager.h.
|
private |
Definition at line 173 of file xmlrpc_manager.h.
|
private |
Definition at line 138 of file xmlrpc_manager.h.