]>
git.proxmox.com Git - ceph.git/blob - ceph/src/messages/MClientQuota.h
1 #ifndef CEPH_MCLIENTQUOTA_H
2 #define CEPH_MCLIENTQUOTA_H
4 #include "msg/Message.h"
6 class MClientQuota final
: public SafeMessage
{
14 SafeMessage
{CEPH_MSG_CLIENT_QUOTA
},
17 ~MClientQuota() final
{}
20 std::string_view
get_type_name() const override
{ return "client_quota"; }
21 void print(std::ostream
& out
) const override
{
22 out
<< "client_quota(";
23 out
<< " [" << ino
<< "] ";
29 void encode_payload(uint64_t features
) override
{
32 encode(rstat
.rctime
, payload
);
33 encode(rstat
.rbytes
, payload
);
34 encode(rstat
.rfiles
, payload
);
35 encode(rstat
.rsubdirs
, payload
);
36 encode(quota
, payload
);
38 void decode_payload() override
{
40 auto p
= payload
.cbegin();
42 decode(rstat
.rctime
, p
);
43 decode(rstat
.rbytes
, p
);
44 decode(rstat
.rfiles
, p
);
45 decode(rstat
.rsubdirs
, p
);
50 template<class T
, typename
... Args
>
51 friend boost::intrusive_ptr
<T
> ceph::make_message(Args
&&... args
);