namespace cls {
namespace journal {
namespace client {
+using ceph::encode;
+using ceph::decode;
namespace {
void send(const std::string &start_after) {
bufferlist inbl;
- ::encode(start_after, inbl);
- ::encode(JOURNAL_MAX_RETURN, inbl);
+ encode(start_after, inbl);
+ encode(JOURNAL_MAX_RETURN, inbl);
librados::ObjectReadOperation op;
op.exec("journal", "client_list", inbl);
librados::AioCompletion *rados_completion =
librados::Rados::aio_create_completion(this, rados_callback, NULL);
int r = ioctx.aio_operate(oid, rados_completion, &op, &outbl);
- assert(r == 0);
+ ceph_assert(r == 0);
rados_completion->release();
}
}
try {
- bufferlist::iterator iter = outbl.begin();
+ auto iter = outbl.cbegin();
std::set<cls::journal::Client> partial_clients;
- ::decode(partial_clients, iter);
+ decode(partial_clients, iter);
std::string start_after;
if (!partial_clients.empty()) {
librados::AioCompletion *rados_completion =
librados::Rados::aio_create_completion(this, rados_callback, NULL);
int r = ioctx.aio_operate(oid, rados_completion, &op, &outbl);
- assert(r == 0);
+ ceph_assert(r == 0);
rados_completion->release();
}
void finish(int r) override {
if (r == 0) {
try {
- bufferlist::iterator iter = outbl.begin();
- ::decode(*order, iter);
- ::decode(*splay_width, iter);
- ::decode(*pool_id, iter);
+ auto iter = outbl.cbegin();
+ decode(*order, iter);
+ decode(*splay_width, iter);
+ decode(*pool_id, iter);
} catch (const buffer::error &err) {
r = -EBADMSG;
}
librados::AioCompletion *rados_completion =
librados::Rados::aio_create_completion(this, rados_callback, NULL);
int r = ioctx.aio_operate(oid, rados_completion, &op, &outbl);
- assert(r == 0);
+ ceph_assert(r == 0);
rados_completion->release();
}
void finish(int r) override {
if (r == 0) {
try {
- bufferlist::iterator iter = outbl.begin();
- ::decode(*minimum_set, iter);
- ::decode(*active_set, iter);
+ auto iter = outbl.cbegin();
+ decode(*minimum_set, iter);
+ decode(*active_set, iter);
client_list->send("");
} catch (const buffer::error &err) {
r = -EBADMSG;
void create(librados::ObjectWriteOperation *op,
uint8_t order, uint8_t splay, int64_t pool_id) {
bufferlist bl;
- ::encode(order, bl);
- ::encode(splay, bl);
- ::encode(pool_id, bl);
+ encode(order, bl);
+ encode(splay, bl);
+ encode(pool_id, bl);
op->exec("journal", "create", bl);
}
void set_minimum_set(librados::ObjectWriteOperation *op, uint64_t object_set) {
bufferlist bl;
- ::encode(object_set, bl);
+ encode(object_set, bl);
op->exec("journal", "set_minimum_set", bl);
}
void set_active_set(librados::ObjectWriteOperation *op, uint64_t object_set) {
bufferlist bl;
- ::encode(object_set, bl);
+ encode(object_set, bl);
op->exec("journal", "set_active_set", bl);
}
return r;
}
- bufferlist::iterator iter = out_bl.begin();
+ auto iter = out_bl.cbegin();
r = get_client_finish(&iter, client);
if (r < 0) {
return r;
void get_client_start(librados::ObjectReadOperation *op,
const std::string &id) {
bufferlist bl;
- ::encode(id, bl);
+ encode(id, bl);
op->exec("journal", "get_client", bl);
}
-int get_client_finish(bufferlist::iterator *iter,
+int get_client_finish(bufferlist::const_iterator *iter,
cls::journal::Client *client) {
try {
- ::decode(*client, *iter);
+ decode(*client, *iter);
} catch (const buffer::error &err) {
return -EBADMSG;
}
void client_register(librados::ObjectWriteOperation *op,
const std::string &id, const bufferlist &data) {
bufferlist bl;
- ::encode(id, bl);
- ::encode(data, bl);
+ encode(id, bl);
+ encode(data, bl);
op->exec("journal", "client_register", bl);
}
void client_update_data(librados::ObjectWriteOperation *op,
const std::string &id, const bufferlist &data) {
bufferlist bl;
- ::encode(id, bl);
- ::encode(data, bl);
+ encode(id, bl);
+ encode(data, bl);
op->exec("journal", "client_update_data", bl);
}
const std::string &id,
cls::journal::ClientState state) {
bufferlist bl;
- ::encode(id, bl);
- ::encode(static_cast<uint8_t>(state), bl);
+ encode(id, bl);
+ encode(static_cast<uint8_t>(state), bl);
op->exec("journal", "client_update_state", bl);
}
const std::string &id) {
bufferlist bl;
- ::encode(id, bl);
+ encode(id, bl);
op->exec("journal", "client_unregister", bl);
}
void client_commit(librados::ObjectWriteOperation *op, const std::string &id,
const cls::journal::ObjectSetPosition &commit_position) {
bufferlist bl;
- ::encode(id, bl);
- ::encode(commit_position, bl);
+ encode(id, bl);
+ encode(commit_position, bl);
op->exec("journal", "client_commit", bl);
}
return r;
}
- bufferlist::iterator iter = out_bl.begin();
+ auto iter = out_bl.cbegin();
r = get_next_tag_tid_finish(&iter, tag_tid);
if (r < 0) {
return r;
op->exec("journal", "get_next_tag_tid", bl);
}
-int get_next_tag_tid_finish(bufferlist::iterator *iter,
+int get_next_tag_tid_finish(bufferlist::const_iterator *iter,
uint64_t *tag_tid) {
try {
- ::decode(*tag_tid, *iter);
+ decode(*tag_tid, *iter);
} catch (const buffer::error &err) {
return -EBADMSG;
}
return r;
}
- bufferlist::iterator iter = out_bl.begin();
+ auto iter = out_bl.cbegin();
r = get_tag_finish(&iter, tag);
if (r < 0) {
return r;
void get_tag_start(librados::ObjectReadOperation *op,
uint64_t tag_tid) {
bufferlist bl;
- ::encode(tag_tid, bl);
+ encode(tag_tid, bl);
op->exec("journal", "get_tag", bl);
}
-int get_tag_finish(bufferlist::iterator *iter, cls::journal::Tag *tag) {
+int get_tag_finish(bufferlist::const_iterator *iter, cls::journal::Tag *tag) {
try {
- ::decode(*tag, *iter);
+ decode(*tag, *iter);
} catch (const buffer::error &err) {
return -EBADMSG;
}
void tag_create(librados::ObjectWriteOperation *op, uint64_t tag_tid,
uint64_t tag_class, const bufferlist &data) {
bufferlist bl;
- ::encode(tag_tid, bl);
- ::encode(tag_class, bl);
- ::encode(data, bl);
+ encode(tag_tid, bl);
+ encode(tag_class, bl);
+ encode(data, bl);
op->exec("journal", "tag_create", bl);
}
return r;
}
- bufferlist::iterator iter = out_bl.begin();
+ auto iter = out_bl.cbegin();
std::set<cls::journal::Tag> decode_tags;
r = tag_list_finish(&iter, &decode_tags);
if (r < 0) {
const std::string &client_id,
boost::optional<uint64_t> tag_class) {
bufferlist bl;
- ::encode(start_after_tag_tid, bl);
- ::encode(max_return, bl);
- ::encode(client_id, bl);
- ::encode(tag_class, bl);
+ encode(start_after_tag_tid, bl);
+ encode(max_return, bl);
+ encode(client_id, bl);
+ encode(tag_class, bl);
op->exec("journal", "tag_list", bl);
}
-int tag_list_finish(bufferlist::iterator *iter,
+int tag_list_finish(bufferlist::const_iterator *iter,
std::set<cls::journal::Tag> *tags) {
try {
- ::decode(*tags, *iter);
+ decode(*tags, *iter);
} catch (const buffer::error &err) {
return -EBADMSG;
}
void guard_append(librados::ObjectWriteOperation *op, uint64_t soft_max_size) {
bufferlist bl;
- ::encode(soft_max_size, bl);
+ encode(soft_max_size, bl);
op->exec("journal", "guard_append", bl);
}