]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/messages/MExportDir.h
import 15.2.0 Octopus source
[ceph.git] / ceph / src / messages / MExportDir.h
index 8f509e03179398ad526be6459dcfb907f93ce2cf..b9e18188b36f0b1df2622f9be79a34acbf463065 100644 (file)
 #include "msg/Message.h"
 
 
-class MExportDir : public MessageInstance<MExportDir> {
+class MExportDir : public SafeMessage {
 public:
-  friend factory;
   dirfrag_t dirfrag;
   bufferlist export_data;
   vector<dirfrag_t> bounds;
   bufferlist client_map;
 
 protected:
-  MExportDir() : MessageInstance(MSG_MDS_EXPORTDIR) {}
+  MExportDir() : SafeMessage{MSG_MDS_EXPORTDIR} {}
   MExportDir(dirfrag_t df, uint64_t tid) :
-    MessageInstance(MSG_MDS_EXPORTDIR), dirfrag(df) {
+    SafeMessage{MSG_MDS_EXPORTDIR}, dirfrag(df) {
     set_tid(tid);
   }
   ~MExportDir() override {}
@@ -59,7 +58,9 @@ public:
     decode(export_data, p);
     decode(client_map, p);
   }
-
+private:
+  template<class T, typename... Args>
+  friend boost::intrusive_ptr<T> ceph::make_message(Args&&... args);
 };
 
 #endif