Skip to content

Commit

Permalink
cls/journal: add async client_update_state method
Browse files Browse the repository at this point in the history
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
(cherry picked from commit 58b8c66)
  • Loading branch information
Mykola Golub authored and Jason Dillaman committed Oct 11, 2016
1 parent 9d1f756 commit 3aec576
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 4 deletions.
13 changes: 9 additions & 4 deletions src/cls/journal/cls_journal_client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -289,13 +289,18 @@ void client_update_data(librados::ObjectWriteOperation *op,

int client_update_state(librados::IoCtx &ioctx, const std::string &oid,
const std::string &id, cls::journal::ClientState state) {
librados::ObjectWriteOperation op;
client_update_state(&op, id, state);
return ioctx.operate(oid, &op);
}

void client_update_state(librados::ObjectWriteOperation *op,
const std::string &id,
cls::journal::ClientState state) {
bufferlist bl;
::encode(id, bl);
::encode(static_cast<uint8_t>(state), bl);

librados::ObjectWriteOperation op;
op.exec("journal", "client_update_state", bl);
return ioctx.operate(oid, &op);
op->exec("journal", "client_update_state", bl);
}

int client_unregister(librados::IoCtx &ioctx, const std::string &oid,
Expand Down
3 changes: 3 additions & 0 deletions src/cls/journal/cls_journal_client.h
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ void client_update_data(librados::ObjectWriteOperation *op,
const std::string &id, const bufferlist &data);
int client_update_state(librados::IoCtx &ioctx, const std::string &oid,
const std::string &id, cls::journal::ClientState state);
void client_update_state(librados::ObjectWriteOperation *op,
const std::string &id,
cls::journal::ClientState state);

int client_unregister(librados::IoCtx &ioctx, const std::string &oid,
const std::string &id);
Expand Down

0 comments on commit 3aec576

Please sign in to comment.