rad  2.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
rad::MsgRequestor< TYPEREQ, TYPEREP > Class Template Reference

#include <msgRequestor.hpp>

Public Member Functions

 MsgRequestor (const std::string &endpoint, const std::string &identity, boost::asio::io_service &ios, std::function< void(const std::error_code &, TYPEREP)> reply_handler)
 
virtual ~MsgRequestor ()
 
size_t Send (const TYPEREQ &payload, const long timeout=0)
 
 MsgRequestor (const MsgRequestor &)=delete
 
MsgRequestoroperator= (const MsgRequestor &)=delete
 
 MsgRequestor (const std::string &endpoint, const std::string &identity, boost::asio::io_service &ios, std::function< void(const std::error_code &, TYPEREP)> reply_handler)
 
virtual ~MsgRequestor ()
 
size_t Send (const TYPEREQ &payload, const long timeout=0)
 
 MsgRequestor (const MsgRequestor &)=delete
 
MsgRequestoroperator= (const MsgRequestor &)=delete
 

Detailed Description

template<typename TYPEREQ, typename TYPEREP>
class rad::MsgRequestor< TYPEREQ, TYPEREP >

Class to send typed requests and receive typed replies.

Constructor & Destructor Documentation

template<typename TYPEREQ , typename TYPEREP>
rad::MsgRequestor< TYPEREQ, TYPEREP >::MsgRequestor ( const std::string &  endpoint,
const std::string &  identity,
boost::asio::io_service &  ios,
std::function< void(const std::error_code &, TYPEREP)>  reply_handler 
)

Constructor for the MsgRequestor class.

Parameters
[in]endpointDestination address and port to be used to send the requests.
[in]identityPrefix to be used to build the request identifier.
[in]iosReference to the event loop.
[in]reply_handlerHandler of the reply.
template<typename TYPEREQ , typename TYPEREP >
rad::MsgRequestor< TYPEREQ, TYPEREP >::~MsgRequestor ( )
virtual

Destructor

template<typename TYPEREQ, typename TYPEREP>
rad::MsgRequestor< TYPEREQ, TYPEREP >::MsgRequestor ( const MsgRequestor< TYPEREQ, TYPEREP > &  )
delete
template<typename TYPEREQ, typename TYPEREP>
rad::MsgRequestor< TYPEREQ, TYPEREP >::MsgRequestor ( const std::string &  endpoint,
const std::string &  identity,
boost::asio::io_service &  ios,
std::function< void(const std::error_code &, TYPEREP)>  reply_handler 
)
template<typename TYPEREQ, typename TYPEREP>
virtual rad::MsgRequestor< TYPEREQ, TYPEREP >::~MsgRequestor ( )
virtual
template<typename TYPEREQ, typename TYPEREP>
rad::MsgRequestor< TYPEREQ, TYPEREP >::MsgRequestor ( const MsgRequestor< TYPEREQ, TYPEREP > &  )
delete

Member Function Documentation

template<typename TYPEREQ, typename TYPEREP>
MsgRequestor& rad::MsgRequestor< TYPEREQ, TYPEREP >::operator= ( const MsgRequestor< TYPEREQ, TYPEREP > &  )
delete
template<typename TYPEREQ, typename TYPEREP>
MsgRequestor& rad::MsgRequestor< TYPEREQ, TYPEREP >::operator= ( const MsgRequestor< TYPEREQ, TYPEREP > &  )
delete
template<typename TYPEREQ, typename TYPEREP>
size_t rad::MsgRequestor< TYPEREQ, TYPEREP >::Send ( const TYPEREQ &  payload,
const long  timeout = 0 
)
template<typename TYPEREQ, typename TYPEREP >
size_t rad::MsgRequestor< TYPEREQ, TYPEREP >::Send ( const TYPEREQ &  payload,
const long  timeout = 0 
)

Send a request message to an destination process.

Parameters
payloadRequest's payload.
timeoutRequest's timeout in msec.
Returns
The number of bytes sent.

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