TARAXA
|
#include <ModularServer.h>
Classes | |
struct | RPCModule |
Public Types | |
using | MethodPointer = AbstractMethodPointer< I > |
using | NotificationPointer = AbstractNotificationPointer< I > |
using | MethodBinding = std::tuple< jsonrpc::Procedure, AbstractMethodPointer< I > > |
using | NotificationBinding = std::tuple< jsonrpc::Procedure, AbstractNotificationPointer< I > > |
using | Methods = std::vector< MethodBinding > |
using | Notifications = std::vector< NotificationBinding > |
using | RPCModules = std::vector< RPCModule > |
Public Member Functions | |
virtual | ~ServerInterface () |
Methods const & | methods () const |
Notifications const & | notifications () const |
virtual RPCModules | implementedModules () const =0 |
Protected Member Functions | |
void | bindAndAddMethod (jsonrpc::Procedure const &_proc, MethodPointer _pointer) |
void | bindAndAddNotification (jsonrpc::Procedure const &_proc, NotificationPointer _pointer) |
Private Attributes | |
Methods | m_methods |
Notifications | m_notifications |
struct ServerInterface::RPCModule |
Class Members | ||
---|---|---|
string | name | |
string | version |
using ServerInterface< I >::MethodBinding = std::tuple<jsonrpc::Procedure, AbstractMethodPointer<I> > |
using ServerInterface< I >::MethodPointer = AbstractMethodPointer<I> |
using ServerInterface< I >::Methods = std::vector<MethodBinding> |
using ServerInterface< I >::NotificationBinding = std::tuple<jsonrpc::Procedure, AbstractNotificationPointer<I> > |
using ServerInterface< I >::NotificationPointer = AbstractNotificationPointer<I> |
using ServerInterface< I >::Notifications = std::vector<NotificationBinding> |
using ServerInterface< I >::RPCModules = std::vector<RPCModule> |
|
inlinevirtual |
|
inlineprotected |
|
inlineprotected |
|
pure virtual |
Implemented in taraxa::net::Test, taraxa::net::Taraxa, taraxa::net::Net, taraxa::net::rpc::eth::EthImpl, and taraxa::net::Debug.
|
inline |
|
inline |
|
private |
|
private |