#include "msg/Message.h"
-class MMDSSnapUpdate : public MessageInstance<MMDSSnapUpdate> {
-public:
- friend factory;
+class MMDSSnapUpdate : public SafeMessage {
private:
-
inodeno_t ino;
__s16 snap_op;
bufferlist snap_blob;
protected:
- MMDSSnapUpdate() : MessageInstance(MSG_MDS_SNAPUPDATE) {}
+ MMDSSnapUpdate() : SafeMessage{MSG_MDS_SNAPUPDATE} {}
MMDSSnapUpdate(inodeno_t i, version_t tid, int op) :
- MessageInstance(MSG_MDS_SNAPUPDATE), ino(i), snap_op(op) {
+ SafeMessage{MSG_MDS_SNAPUPDATE}, ino(i), snap_op(op) {
set_tid(tid);
}
~MMDSSnapUpdate() override {}
decode(snap_op, p);
decode(snap_blob, p);
}
+private:
+ template<class T, typename... Args>
+ friend boost::intrusive_ptr<T> ceph::make_message(Args&&... args);
};
#endif