]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/messages/MInodeFileCaps.h
import 15.2.0 Octopus source
[ceph.git] / ceph / src / messages / MInodeFileCaps.h
index 0d32dcd720f2e62c7c7b562175ede0976e468af3..506594d34ae10d3911204dff11d4e982e449e7d4 100644 (file)
 
 #include "msg/Message.h"
 
-class MInodeFileCaps : public MessageInstance<MInodeFileCaps> {
-public:
-  friend factory;
+class MInodeFileCaps : public SafeMessage {
 private:
+  static constexpr int HEAD_VERSION = 1;
+  static constexpr int COMPAT_VERSION = 1;
   inodeno_t ino;
   __u32     caps = 0;
 
- public:
-
+public:
   inodeno_t get_ino() const { return ino; }
   int       get_caps() const { return caps; }
 
 protected:
-  MInodeFileCaps() : MessageInstance(MSG_MDS_INODEFILECAPS) {}
+  MInodeFileCaps() : SafeMessage(MSG_MDS_INODEFILECAPS, HEAD_VERSION, COMPAT_VERSION) {}
   MInodeFileCaps(inodeno_t ino, int caps) :
-    MessageInstance(MSG_MDS_INODEFILECAPS) {
+    SafeMessage(MSG_MDS_INODEFILECAPS, HEAD_VERSION, COMPAT_VERSION) {
     this->ino = ino;
     this->caps = caps;
   }
@@ -56,6 +55,9 @@ public:
     decode(ino, p);
     decode(caps, p);
   }
+private:
+  template<class T, typename... Args>
+  friend boost::intrusive_ptr<T> ceph::make_message(Args&&... args);
 };
 
 #endif