11 #ifndef RPCSERVER_AGGREGATOR_H
12 #define RPCSERVER_AGGREGATOR_H
44 template <
class T,
typename Tcallback>
45 struct registerConfigureCallback_f :
public std::unary_function<T, void> {
46 registerConfigureCallback_f(
const std::string& _id,
const Tcallback _callback)
47 : id(_id), callback(_callback)
52 void operator()(T& x) { x->i()->registerConfigureCallback(
id, callback); }
54 const Tcallback callback;
57 template <
class T,
typename Tcallback>
58 struct unregisterConfigureCallback_f :
public std::unary_function<T, void> {
59 unregisterConfigureCallback_f(
const std::string& _id) : id(_id) { ; }
61 void operator()(T& x) { x->i()->unregisterConfigureCallback(
id); }
65 template <
class T,
typename Tcallback>
66 struct registerQueryCallback_f :
public std::unary_function<T, void> {
67 registerQueryCallback_f(
const std::string& _id,
const Tcallback _callback)
68 : id(_id), callback(_callback)
73 void operator()(T& x) { x->i()->registerQueryCallback(
id, callback); }
75 const Tcallback callback;
78 template <
class T,
typename Tcallback>
79 struct unregisterQueryCallback_f :
public std::unary_function<T, void> {
80 unregisterQueryCallback_f(
const std::string& _id) : id(_id) { ; }
82 void operator()(T& x) { x->i()->unregisterQueryCallback(
id); }
87 template <
class T,
typename Tcallback>
88 struct registerHandlerCallback_f :
public std::unary_function<T, void> {
89 registerHandlerCallback_f(
const std::string& _id,
const Tcallback _callback)
90 : id(_id), callback(_callback)
95 void operator()(T& x) { x->i()->registerHandlerCallback(
id, callback); }
97 const Tcallback callback;
100 template <
class T,
typename Tcallback>
101 struct unregisterHandlerCallback_f :
public std::unary_function<T, void> {
102 unregisterHandlerCallback_f(
const std::string& _id) : id(_id) { ; }
104 void operator()(T& x) { x->i()->unregisterHandlerCallback(
id); }
105 const std::string id;
109 const std::string d_type;
110 typedef std::vector<rpcmanager_base::rpcserver_booter_base_sptr> rpcServerMap_t;
111 std::vector<std::string> d_registeredServers;
112 rpcServerMap_t d_serverlist;
Definition: rpccallbackregister_base.h:83
Definition: rpcserver_aggregator.h:20
void registerQueryCallback(const std::string &id, const queryCallback_t callback) override
void registerHandlerCallback(const std::string &id, const handlerCallback_t callback) override
void unregisterConfigureCallback(const std::string &id) override
void registerServer(rpcmanager_base::rpcserver_booter_base_sptr server)
void unregisterQueryCallback(const std::string &id) override
void unregisterHandlerCallback(const std::string &id) override
~rpcserver_aggregator() override
void registerConfigureCallback(const std::string &id, const configureCallback_t callback) override
const std::vector< std::string > & registeredServers()
const std::string & type()
Definition: rpcserver_base.h:17