CatapultServer
v0.5.0.1 (Elephant)
|
Dispatches requests to a remote node. More...
Public Member Functions | |
RemoteRequestDispatcher (ionet::PacketIo &io) | |
Creates a remote request dispatcher around io. More... | |
template<typename TFuncTraits , typename... TArgs> | |
thread::future< typename TFuncTraits::ResultType > | dispatch (const TFuncTraits &traits, TArgs &&... args) |
Dispatches args to the underlying io. More... | |
Private Types | |
enum | RemoteChainResult { RemoteChainResult::Success, RemoteChainResult::Write_Error, RemoteChainResult::Read_Error, RemoteChainResult::Malformed_Packet } |
Private Member Functions | |
template<typename TFuncTraits , typename TCallback > | |
void | send (const TFuncTraits &traits, const ionet::PacketPayload &packetPayload, const TCallback &callback) |
Static Private Member Functions | |
static constexpr const char * | GetErrorMessage (RemoteChainResult result) |
Private Attributes | |
ionet::PacketIo & | m_io |
Dispatches requests to a remote node.
|
strongprivate |
|
inlineexplicit |
Creates a remote request dispatcher around io.
|
inline |
Dispatches args to the underlying io.
|
inlinestaticconstexprprivate |
|
inlineprivate |
|
private |