summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc')
-rw-r--r--gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc b/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc
index 3ff553af69..e81a899626 100644
--- a/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc
+++ b/gnuradio-runtime/lib/controlport/rpcserver_aggregator.cc
@@ -74,6 +74,25 @@ rpcserver_aggregator::unregisterQueryCallback(const std::string &id)
unregisterQueryCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, queryCallback_t>(id));
}
+
+
+void
+rpcserver_aggregator::registerHandlerCallback(const std::string &id,
+ const handlerCallback_t callback)
+{
+ std::for_each(d_serverlist.begin(), d_serverlist.end(),
+ registerHandlerCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, handlerCallback_t>(id, callback));
+}
+
+void
+rpcserver_aggregator::unregisterHandlerCallback(const std::string &id)
+{
+ std::for_each(d_serverlist.begin(), d_serverlist.end(),
+ unregisterHandlerCallback_f<rpcmanager_base::rpcserver_booter_base_sptr, handlerCallback_t>(id));
+}
+
+
+
void
rpcserver_aggregator::registerServer(rpcmanager_base::rpcserver_booter_base_sptr server)
{