]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cls/journal: async client_list method
authorMykola Golub <mgolub@mirantis.com>
Wed, 31 Aug 2016 19:27:53 +0000 (22:27 +0300)
committerMykola Golub <mgolub@mirantis.com>
Wed, 28 Sep 2016 12:17:18 +0000 (15:17 +0300)
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
src/cls/journal/cls_journal_client.cc
src/cls/journal/cls_journal_client.h

index 4ecaa879ed0a2a61577332e7ba6326079f77abb5..89baab8c698c8e75650a41dabef45f08d552f3fa 100644 (file)
@@ -336,11 +336,16 @@ void client_commit(librados::ObjectWriteOperation *op, const std::string &id,
 int client_list(librados::IoCtx &ioctx, const std::string &oid,
                 std::set<cls::journal::Client> *clients) {
   C_SaferCond cond;
-  C_ClientList *client_list = new C_ClientList(ioctx, oid, clients, &cond);
-  client_list->send("");
+  client_list(ioctx, oid, clients, &cond);
   return cond.wait();
 }
 
+void client_list(librados::IoCtx &ioctx, const std::string &oid,
+                 std::set<cls::journal::Client> *clients, Context *on_finish) {
+  C_ClientList *client_list = new C_ClientList(ioctx, oid, clients, on_finish);
+  client_list->send("");
+}
+
 int get_next_tag_tid(librados::IoCtx &ioctx, const std::string &oid,
                      uint64_t *tag_tid) {
   librados::ObjectReadOperation op;
index 9d41d405e7ab2e69f035a627e986a9c69b4033c0..477254f32687e2ce20341f142a077160b6ae81e1 100644 (file)
@@ -67,6 +67,8 @@ void client_commit(librados::ObjectWriteOperation *op, const std::string &id,
 
 int client_list(librados::IoCtx &ioctx, const std::string &oid,
                 std::set<cls::journal::Client> *clients);
+void client_list(librados::IoCtx &ioctx, const std::string &oid,
+                 std::set<cls::journal::Client> *clients, Context *on_finish);
 
 // journal tag helpers
 int get_next_tag_tid(librados::IoCtx &ioctx, const std::string &oid,