From: Shengming Zhang Date: Sat, 18 Jul 2020 06:16:34 +0000 (+0800) Subject: rgw: dump transitions in RGWLifecycleConfiguration::dump() X-Git-Tag: v16.1.0~1473^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c843b6f08799c1fef39a4a6fd24c27207d1e951e;p=ceph.git rgw: dump transitions in RGWLifecycleConfiguration::dump() Signed-off-by: Shengming Zhang --- diff --git a/src/rgw/rgw_json_enc.cc b/src/rgw/rgw_json_enc.cc index 035adf9b0e17..3653ae923f0b 100644 --- a/src/rgw/rgw_json_enc.cc +++ b/src/rgw/rgw_json_enc.cc @@ -1994,6 +1994,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, transition); + } + f->close_section(); + + f->open_object_section("noncur_transitions"); + for (auto& [storage_class, transition] : noncur_transitions) { + f->dump_object(storage_class, transition); + } + f->close_section(); } void LCFilter::dump(Formatter *f) const @@ -2017,6 +2028,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, transition); + } + f->close_section(); + + f->open_object_section("noncur_transitions"); + for (auto& [storage_class, transition] : noncur_transitions) { + f->dump_object(storage_class, transition); + } + f->close_section(); f->dump_bool("dm_expiration", dm_expiration); } @@ -2073,4 +2095,3 @@ void rgw_user::dump(Formatter *f) const { ::encode_json("user", *this, f); } - diff --git a/src/rgw/rgw_lc.h b/src/rgw/rgw_lc.h index ff8be4c0efc5..f32e89dcfb37 100644 --- a/src/rgw/rgw_lc.h +++ b/src/rgw/rgw_lc.h @@ -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 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? */