};
WRITE_CLASS_ENCODER(MotrUserInfo);
- class MotrNotification : public Notification {
+struct MotrEmailInfo {
+ std::string user_id;
+ std::string email_id;
+
+ MotrEmailInfo() {}
+ MotrEmailInfo(std::string _user_id, std::string _email_id )
+ : user_id(std::move(_user_id)), email_id(std::move(_email_id)) {}
+
+ void encode(bufferlist& bl) const {
+ ENCODE_START(2, 2, bl);
+ encode(user_id, bl);
+ encode(email_id, bl);
+ ENCODE_FINISH(bl);
+ }
+
+ void decode(bufferlist::const_iterator& bl) {
+ DECODE_START_LEGACY_COMPAT_LEN_32(2, 2, 2, bl);
+ decode(user_id, bl);
+ decode(email_id, bl);
+ DECODE_FINISH(bl);
+ }
+};
+WRITE_CLASS_ENCODER(MotrEmailInfo);
+
+struct MotrAccessKey {
+ std::string id; // AccessKey
+ std::string key; // SecretKey
+ std::string user_id; // UserID
+
+ MotrAccessKey() {}
+ MotrAccessKey(std::string _id, std::string _key, std::string _user_id)
+ : id(std::move(_id)), key(std::move(_key)), user_id(std::move(_user_id)) {}
+
+ void encode(bufferlist& bl) const {
+ ENCODE_START(2, 2, bl);
+ encode(id, bl);
+ encode(key, bl);
+ encode(user_id, bl);
+ ENCODE_FINISH(bl);
+ }
+
+ void decode(bufferlist::const_iterator& bl) {
+ DECODE_START_LEGACY_COMPAT_LEN_32(2, 2, 2, bl);
+ decode(id, bl);
+ decode(key, bl);
+ decode(user_id, bl);
+ DECODE_FINISH(bl);
+ }
+};
+WRITE_CLASS_ENCODER(MotrAccessKey);
+
+ class MotrNotification : public StoreNotification {
public:
MotrNotification(Object* _obj, Object* _src_obj, rgw::notify::EventType _type) :
- Notification(_obj, _src_obj, _type) {}
+ StoreNotification(_obj, _src_obj, _type) {}
~MotrNotification() = default;
virtual int publish_reserve(const DoutPrefixProvider *dpp, RGWObjTags* obj_tags = nullptr) override { return 0;}
struct m0_idx idx;
public:
- MotrUser(MotrStore *_st, const rgw_user& _u) : User(_u), store(_st) { }
- MotrUser(MotrStore *_st, const RGWUserInfo& _i) : User(_i), store(_st) { }
+ std::set<std::string> access_key_tracker;
+ MotrUser(MotrStore *_st, const rgw_user& _u) : StoreUser(_u), store(_st) { }
+ MotrUser(MotrStore *_st, const RGWUserInfo& _i) : StoreUser(_i), store(_st) { }
MotrUser(MotrStore *_st) : store(_st) { }
MotrUser(MotrUser& _o) = default;
MotrUser() {}