int get_perm_mask() const {
return perm_mask;
}
+
+ std::string to_str() const {
+ std::stringstream ss;
+
+ ss << "RGWDummyIdentityApplier(auth_id=" << id
+ << ", perm_mask=" << perm_mask
+ << ", is_admin=" << is_admin << ")";
+
+ return ss.str();
+ }
};
return std::unique_ptr<RGWIdentityApplier>(
return info.acct_user == uid;
}
+std::string RGWRemoteAuthApplier::to_str() const
+{
+ std::stringstream ss;
+
+ ss << "RGWRemoteAuthApplier(acct_user=" << info.acct_user
+ << ", acct_name=" << info.acct_name
+ << ", perm_mask=" << info.perm_mask
+ << ", is_admin=" << info.is_admin << ")";
+
+ return ss.str();
+}
+
void RGWRemoteAuthApplier::create_account(const rgw_user acct_user,
RGWUserInfo& user_info) const /* out */
{
return uid == user_info.user_id;
}
+std::string RGWLocalAuthApplier::to_str() const
+{
+ std::stringstream ss;
+
+ ss << "RGWLocalAuthApplier(acct_user=" << user_info.user_id
+ << ", acct_name=" << user_info.display_name
+ << ", subuser=" << subuser
+ << ", perm_mask=" << get_perm_mask()
+ << ", is_admin=" << user_info.admin << ")";
+
+ return ss.str();
+}
+
uint32_t RGWLocalAuthApplier::get_perm_mask(const std::string& subuser_name,
const RGWUserInfo &uinfo) const
{
* the anonymous identity. */
return is_owner_of(rgw_user(RGW_USER_ANON_ID));
}
+
+ virtual std::string to_str() const = 0;
};
-inline ostream& operator<<(ostream& out, const RGWIdentityApplier &id) {
-// return out << id.to_str();
- return out;
+inline std::ostream& operator<<(std::ostream& out,
+ const RGWIdentityApplier &id) {
+ return out << id.to_str();
}
std::unique_ptr<RGWIdentityApplier>
virtual bool is_admin_of(const rgw_user& uid) const override;
virtual bool is_owner_of(const rgw_user& uid) const override;
virtual int get_perm_mask() const { return info.perm_mask; }
+ virtual std::string to_str() const override;
virtual void load_acct_info(RGWUserInfo& user_info) const override; /* out */
struct Factory {
virtual int get_perm_mask() const override {
return get_perm_mask(subuser, user_info);
}
+ virtual std::string to_str() const override;
virtual void load_acct_info(RGWUserInfo& user_info) const override; /* out */
struct Factory {
return decoratee.get_perm_mask();
}
+ virtual std::string to_str() const override {
+ return decoratee.to_str();
+ }
+
virtual void load_acct_info(RGWUserInfo& user_info) const override { /* out */
return decoratee.load_acct_info(user_info);
}
return decoratee->get_perm_mask();
}
+ virtual std::string to_str() const override {
+ return decoratee->to_str();
+ }
+
virtual void load_acct_info(RGWUserInfo& user_info) const override { /* out */
return decoratee->load_acct_info(user_info);
}
acct_user_override(acct_user_override) {
}
+ virtual std::string to_str() const override;
virtual void load_acct_info(RGWUserInfo& user_info) const override; /* out */
};
template <typename T>
const rgw_user RGWThirdPartyAccountAuthApplier<T>::UNKNOWN_ACCT;
+template <typename T>
+std::string RGWThirdPartyAccountAuthApplier<T>::to_str() const
+{
+ return "RGWThirdPartyAccountAuthApplier(" + acct_user_override.to_str() + ")"
+ " -> " + RGWDecoratingAuthApplier<T>::to_str();
+}
+
template <typename T>
void RGWThirdPartyAccountAuthApplier<T>::load_acct_info(RGWUserInfo& user_info) const
{