void RGWGetObjLayout::execute()
{
- rgw_obj obj(s->bucket, s->object.name);
- obj.set_instance(s->object.instance);
- target = new RGWRados::Object(store, s->bucket_info, *static_cast<RGWObjectCtx *>(s->obj_ctx), obj);
+ rgw_obj obj(s->bucket, s->object);
+ target = new RGWRados::Object(store, s->bucket_info, *static_cast<RGWObjectCtx *>(s->obj_ctx), rgw_obj(s->bucket, s->object));
RGWRados::Object::Read stat_op(target);
op_ret = stat_op.prepare();
return;
}
- head_obj = stat_op.state.obj;
+ head_obj = stat_op.state.head_obj;
op_ret = target->get_manifest(&manifest);
}
protected:
RGWRados::Object *target{nullptr};
RGWObjManifest *manifest{nullptr};
- rgw_obj head_obj;
+ rgw_raw_obj head_obj;
public:
RGWGetObjLayout() {
f.open_array_section("data_location");
for (auto miter = manifest->obj_begin(); miter != manifest->obj_end(); ++miter) {
f.open_object_section("obj");
- rgw_obj loc = miter.get_location();
+ rgw_raw_obj raw_loc = miter.get_location().get_raw_obj(store);
::encode_json("ofs", miter.get_ofs(), &f);
- ::encode_json("loc", loc, &f);
+ ::encode_json("loc", raw_loc, &f);
::encode_json("loc_ofs", miter.location_ofs(), &f);
::encode_json("loc_size", miter.get_stripe_size(), &f);
f.close_section();