Robust Distributed System Nucleus (rDSN)  ver 1.0.0
Classes | Functions
Server-Side RPC Primitives

Overview

Classes

class  dsn::rpc_replier< TResponse >
 
class  dsn::serverlet< T >
 

Functions

DSN_API bool dsn_rpc_register_handler (dsn_task_code_t code, const char *name, dsn_rpc_request_handler_t cb, void *context, dsn_gpid gpid DEFAULT(dsn_gpid{0}))
 
DSN_API void * dsn_rpc_unregiser_handler (dsn_task_code_t code, dsn_gpid gpid DEFAULT(dsn_gpid{0}))
 
DSN_API void dsn_rpc_reply (dsn_message_t response, dsn_error_t err DEFAULT(0))
 
DSN_API void dsn_rpc_forward (dsn_message_t request, dsn_address_t addr)
 
 dsn::serverlet< T >::serverlet (const char *nm, int task_bucket_count=8)
 
template<typename TRequest >
bool dsn::serverlet< T >::register_rpc_handler (dsn_task_code_t rpc_code, const char *rpc_name_, void(T::*handler)(const TRequest &), dsn_gpid gpid=dsn_gpid{0})
 
template<typename TRequest , typename TResponse >
bool dsn::serverlet< T >::register_rpc_handler (dsn_task_code_t rpc_code, const char *rpc_name_, void(T::*handler)(const TRequest &, TResponse &), dsn_gpid gpid=dsn_gpid{0})
 
template<typename TRequest , typename TResponse >
bool dsn::serverlet< T >::register_async_rpc_handler (dsn_task_code_t rpc_code, const char *rpc_name_, void(T::*handler)(const TRequest &, rpc_replier< TResponse > &), dsn_gpid gpid=dsn_gpid{0})
 
bool dsn::serverlet< T >::register_rpc_handler (dsn_task_code_t rpc_code, const char *rpc_name_, void(T::*handler)(dsn_message_t), dsn_gpid gpid=dsn_gpid{0})
 
bool dsn::serverlet< T >::unregister_rpc_handler (dsn_task_code_t rpc_code, dsn_gpid gpid=dsn_gpid{0})
 
template<typename TResponse >
void dsn::serverlet< T >::reply (dsn_message_t request, const TResponse &resp)