BIND 10 track1914, updated. 480d50eef89a78c5ed326fa392254aeb2ec6df06 [1914] Interface for the async receives
BIND 10 source code commits
bind10-changes at lists.isc.org
Wed May 16 13:24:01 UTC 2012
The branch, track1914 has been updated
via 480d50eef89a78c5ed326fa392254aeb2ec6df06 (commit)
from b1e8bf0d957426abf9aacaa992e966ef0c6aac81 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 480d50eef89a78c5ed326fa392254aeb2ec6df06
Author: Michal 'vorner' Vaner <michal.vaner at nic.cz>
Date: Wed May 16 15:23:02 2012 +0200
[1914] Interface for the async receives
It needs to be tested, documented and of course implemented.
-----------------------------------------------------------------------
Summary of changes:
src/lib/config/ccsession.h | 22 ++++++++++++++++++++--
1 files changed, 20 insertions(+), 2 deletions(-)
-----------------------------------------------------------------------
diff --git a/src/lib/config/ccsession.h b/src/lib/config/ccsession.h
index 059968c..4b089e9 100644
--- a/src/lib/config/ccsession.h
+++ b/src/lib/config/ccsession.h
@@ -15,13 +15,16 @@
#ifndef __CCSESSION_H
#define __CCSESSION_H 1
-#include <string>
-
#include <config/config_data.h>
#include <config/module_spec.h>
+
#include <cc/session.h>
#include <cc/data.h>
+#include <string>
+#include <list>
+#include <boost/function.hpp>
+
namespace isc {
namespace config {
@@ -358,6 +361,20 @@ public:
return (session_.group_recvmsg(envelope, msg, nonblock, seq));
};
+ class AsyncRecvRequest;
+ typedef std::list<boost::shared_ptr<AsyncRecvRequest> > AsyncRecvRequests;
+ typedef AsyncRecvRequests::const_iterator AsyncRecvRequestID;
+ typedef boost::function3<void, const isc::data::ConstElementPtr&,
+ const isc::data::ConstElementPtr&,
+ const AsyncRecvRequestID&>
+ AsyncRecvCallback;
+ AsyncRecvRequestID groupRecvMsgAsync(const AsyncRecvCallback& callback,
+ bool is_reply = true, int seq = -1,
+ const std::string& recipient =
+ std::string());
+
+ void cancelAsyncRecv(const AsyncRecvRequestID& id);
+
private:
ModuleSpec readModuleSpecification(const std::string& filename);
void startCheck();
@@ -367,6 +384,7 @@ private:
std::string module_name_;
isc::cc::AbstractSession& session_;
ModuleSpec module_specification_;
+ AsyncRecvRequests async_recv_requests_;
isc::data::ConstElementPtr handleConfigUpdate(
isc::data::ConstElementPtr new_config);
More information about the bind10-changes
mailing list