send_reply(m, reply);
}
+void Monitor::reply_command(MonOpRequestRef op, int rc, const string &rs,
+ bufferlist& rdata, version_t version)
+{
+ MMonCommand *m = static_cast<MMonCommand*>(op->get_req());
+ assert(m->get_type() == MSG_MON_COMMAND);
+ MMonCommandAck *reply = new MMonCommandAck(m->cmd, rc, rs, version);
+ reply->set_tid(m->get_tid());
+ reply->set_data(rdata);
+ send_reply(op, reply);
+}
+
// ------------------------
// request/reply routing
}
}
+void Monitor::send_reply(MonOpRequestRef op, Message *reply)
+{
+ dout(2) << __func__ << " " << op << " " << *reply << dendl;
+ op->send_reply(reply);
+}
+
+
void Monitor::send_reply(PaxosServiceMessage *req, Message *reply)
{
ConnectionRef connection = req->get_connection();
void reply_command(MMonCommand *m, int rc, const string &rs, version_t version);
void reply_command(MMonCommand *m, int rc, const string &rs, bufferlist& rdata, version_t version);
+ void reply_command(MonOpRequestRef op, int rc, const string &rs, bufferlist& rdata, version_t version);
void handle_probe(MonOpRequestRef op);
void handle_forward(MonOpRequestRef op);
void try_send_message(Message *m, const entity_inst_t& to);
void send_reply(PaxosServiceMessage *req, Message *reply);
+ void send_reply(MonOpRequestRef op, Message *reply);
void no_reply(PaxosServiceMessage *req);
void resend_routed_requests();
void remove_session(MonSession *s);