Robust Distributed System Nucleus (rDSN)  ver 1.0.0
Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
dsn::rpc_session Class Referenceabstract
Inheritance diagram for dsn::rpc_session:

Public Member Functions

DSN_API rpc_session (connection_oriented_network &net,::dsn::rpc_address remote_addr, message_parser_ptr &parser, bool is_client)
 
virtual void close_on_fault_injection ()=0
 
DSN_API bool has_pending_out_msgs ()
 
bool is_client () const
 
::dsn::rpc_address remote_address () const
 
connection_oriented_networknet () const
 
message_parser_ptr parser () const
 
DSN_API void send_message (message_ex *msg)
 
DSN_API bool cancel (message_ex *request)
 
void delay_recv (int delay_ms)
 
DSN_API bool on_recv_message (message_ex *msg, int delay_ms)
 
DSN_API bool on_disconnected (bool is_write)
 
virtual void connect ()=0
 
DSN_API void start_read_next (int read_next=256)
 
DSN_API int prepare_parser ()
 

Static Public Attributes

static DSN_API join_point< void, rpc_session * > on_rpc_session_connected
 
static DSN_API join_point< void, rpc_session * > on_rpc_session_disconnected
 

Protected Member Functions

virtual void send (uint64_t signature)=0
 
virtual void do_read (int read_next)=0
 
DSN_API bool try_connecting ()
 
DSN_API void set_connected ()
 
DSN_API bool set_disconnected ()
 
bool is_disconnected () const
 
bool is_connecting () const
 
bool is_connected () const
 
DSN_API void on_send_completed (uint64_t signature=0)
 

Protected Attributes

connection_oriented_network_net
 
::dsn::rpc_address _remote_addr
 
int _max_buffer_block_count_per_send
 
message_reader _reader
 
message_parser_ptr _parser
 
std::vector< message_parser::send_buf > _sending_buffers
 
std::vector< message_ex * > _sending_msgs
 

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