}
}
+std::string_view to_string(RGWObjCategory c)
+{
+ switch (c) {
+ case RGWObjCategory::None: return "rgw.none";
+ case RGWObjCategory::Main: return "rgw.main";
+ case RGWObjCategory::Shadow: return "rgw.shadow";
+ case RGWObjCategory::MultiMeta: return "rgw.multimeta";
+ case RGWObjCategory::CloudTiered: return "rgw.cloudtiered";
+ default: return "unknown";
+ }
+}
+
void rgw_bucket_pending_info::generate_test_instances(list<rgw_bucket_pending_info*>& o)
{
rgw_bucket_pending_info *i = new rgw_bucket_pending_info;
CloudTiered = 4, // b-i entries which are tiered to external cloud
};
+std::string_view to_string(RGWObjCategory c);
+
+inline std::ostream& operator<<(std::ostream& out, RGWObjCategory c) {
+ return out << to_string(c);
+}
struct rgw_bucket_dir_entry_meta {
RGWObjCategory category;
formatter->open_object_section("usage");
for (iter = stats.begin(); iter != stats.end(); ++iter) {
RGWStorageStats& s = iter->second;
- const char *cat_name = rgw_obj_category_name(iter->first);
- formatter->open_object_section(cat_name);
+ formatter->open_object_section(to_string(iter->first));
s.dump(formatter);
formatter->close_section();
}
dest.append(buf);
}
-static inline const char *rgw_obj_category_name(RGWObjCategory category)
-{
- switch (category) {
- case RGWObjCategory::None:
- return "rgw.none";
- case RGWObjCategory::Main:
- return "rgw.main";
- case RGWObjCategory::Shadow:
- return "rgw.shadow";
- case RGWObjCategory::MultiMeta:
- return "rgw.multimeta";
- case RGWObjCategory::CloudTiered:
- return "rgw.cloudtiered";
- }
-
- return "unknown";
-}
-
static inline uint64_t rgw_rounded_kb(uint64_t bytes)
{
return (bytes + 1023) / 1024;