]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/messages/MTimeCheck.h
import 15.2.0 Octopus source
[ceph.git] / ceph / src / messages / MTimeCheck.h
index 994c6dd8bb57d4e6c7b13817186ce0ed6e205d7b..fe96f5a0f1193b8818fcd8755b75f4d3f24a530c 100644 (file)
 #ifndef CEPH_MTIMECHECK_H
 #define CEPH_MTIMECHECK_H
 
-class MTimeCheck : public MessageInstance<MTimeCheck> {
+class MTimeCheck : public Message {
 public:
-  friend factory;
-
   static constexpr int HEAD_VERSION = 1;
 
   enum {
@@ -35,14 +33,14 @@ public:
   map<entity_inst_t, double> skews;
   map<entity_inst_t, double> latencies;
 
-  MTimeCheck() : MessageInstance(MSG_TIMECHECK, HEAD_VERSION) { }
+  MTimeCheck() : Message{MSG_TIMECHECK, HEAD_VERSION} {}
   MTimeCheck(int op) :
-    MessageInstance(MSG_TIMECHECK, HEAD_VERSION),
+    Message{MSG_TIMECHECK, HEAD_VERSION},
     op(op)
-  { }
+  {}
 
 private:
-  ~MTimeCheck() override { }
+  ~MTimeCheck() override {}
 
 public:
   std::string_view get_type_name() const override { return "time_check"; }
@@ -85,6 +83,9 @@ public:
     encode(skews, payload, features);
     encode(latencies, payload, features);
   }
+private:
+  template<class T, typename... Args>
+  friend boost::intrusive_ptr<T> ceph::make_message(Args&&... args);
 };
 
 #endif /* CEPH_MTIMECHECK_H */