]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: dump transitions in RGWLifecycleConfiguration::dump() 36880/head
authorShengming Zhang <zhangsm01@inspur.com>
Sat, 18 Jul 2020 06:16:34 +0000 (14:16 +0800)
committerNathan Cutler <ncutler@suse.com>
Wed, 23 Sep 2020 11:07:52 +0000 (13:07 +0200)
Signed-off-by: Shengming Zhang <zhangsm01@inspur.com>
(cherry picked from commit c843b6f08799c1fef39a4a6fd24c27207d1e951e)

Conflicts:
src/rgw/rgw_json_enc.cc
- trivial whitespace difference
- dump_object() accepts string_view in master branch, but accepts char*
  in nautilus branch

src/rgw/rgw_json_enc.cc
src/rgw/rgw_lc.h

index b9a2ed26bfc7405b3e6e257b8fcc63a2e3920e5f..5804d7c72482c67ccbf5a39d872d4ff96889894a 100644 (file)
@@ -1694,6 +1694,17 @@ void lc_op::dump(Formatter *f) const
   if (obj_tags) {
     f->dump_object("obj_tags", *obj_tags);
   }
+  f->open_object_section("transitions");
+  for(auto& [storage_class, transition] : transitions) {
+    f->dump_object(storage_class.c_str(), transition);
+  }
+  f->close_section();
+
+  f->open_object_section("noncur_transitions");  
+  for (auto& [storage_class, transition] : noncur_transitions) {
+    f->dump_object(storage_class.c_str(), transition);
+  }
+  f->close_section();
 }
 
 void LCFilter::dump(Formatter *f) const
@@ -1717,6 +1728,17 @@ void LCRule::dump(Formatter *f) const
   f->dump_object("noncur_expiration", noncur_expiration);
   f->dump_object("mp_expiration", mp_expiration);
   f->dump_object("filter", filter);
+  f->open_object_section("transitions");  
+  for (auto& [storage_class, transition] : transitions) {
+    f->dump_object(storage_class.c_str(), transition);
+  }
+  f->close_section();
+
+  f->open_object_section("noncur_transitions");  
+  for (auto& [storage_class, transition] : noncur_transitions) {
+    f->dump_object(storage_class.c_str(), transition);
+  }
+  f->close_section();
   f->dump_bool("dm_expiration", dm_expiration);
 }
 
index e50d9b75ce126860c62f9c6796b9d3ff6b32f510..e7daec3f91a18d287ab518ca9e61d88d2e4d5fb0 100644 (file)
@@ -152,7 +152,11 @@ public:
     decode(storage_class, bl);
     DECODE_FINISH(bl);
   }
-  void dump(Formatter *f) const;
+  void dump(Formatter *f) const {  
+    f->dump_string("days", days);
+    f->dump_string("date", date);
+    f->dump_string("storage_class", storage_class);
+  }
 };
 WRITE_CLASS_ENCODER(LCTransition)
 
@@ -369,6 +373,14 @@ struct transition_action
   boost::optional<ceph::real_time> date;
   string storage_class;
   transition_action() : days(0) {}
+  void dump(Formatter *f) const {
+    if (!date) {
+      f->dump_int("days", days);
+    } else {
+      utime_t ut(*date);
+      f->dump_stream("date") << ut;
+    }
+  }
 };
 
 /* XXX why not LCRule? */