From: lvshanchun Date: Tue, 21 Nov 2017 05:03:09 +0000 (+0800) Subject: rgw: add populate_zonegroup() and populate_uid() in RGWRESTConn X-Git-Tag: v13.1.0~270^2~54 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=38550a10cfc8bf9db1f9943976330a47e1e85527;p=ceph.git rgw: add populate_zonegroup() and populate_uid() in RGWRESTConn populate_params() is too generic, add populate_zonegroup() and populate_uid() in RGWRESTConn, then have populate_params() call them. Signed-off-by: lvshanchun --- diff --git a/src/rgw/rgw_rest_conn.cc b/src/rgw/rgw_rest_conn.cc index fc4cda6e852e..531da9e6d33d 100644 --- a/src/rgw/rgw_rest_conn.cc +++ b/src/rgw/rgw_rest_conn.cc @@ -83,15 +83,8 @@ string RGWRESTConn::get_url() void RGWRESTConn::populate_params(param_vec_t& params, const rgw_user *uid, const string& zonegroup) { - if (uid) { - string uid_str = uid->to_str(); - if (!uid->empty()) { - params.push_back(param_pair_t(RGW_SYS_PARAM_PREFIX "uid", uid_str)); - } - } - if (!zonegroup.empty()) { - params.push_back(param_pair_t(RGW_SYS_PARAM_PREFIX "zonegroup", zonegroup)); - } + populate_uid(params, uid); + populate_zonegroup(params, zonegroup); } int RGWRESTConn::forward(const rgw_user& uid, req_info& info, obj_version *objv, size_t max_response, bufferlist *inbl, bufferlist *outbl) diff --git a/src/rgw/rgw_rest_conn.h b/src/rgw/rgw_rest_conn.h index bc50ae9bac50..dfbec06785f9 100644 --- a/src/rgw/rgw_rest_conn.h +++ b/src/rgw/rgw_rest_conn.h @@ -149,6 +149,21 @@ public: int get_json_resource(const string& resource, param_vec_t *params, T& t); template int get_json_resource(const string& resource, const rgw_http_param_pair *pp, T& t); + +private: + void populate_zonegroup(param_vec_t& params, const string& zonegroup) { + if (!zonegroup.empty()) { + params.push_back(param_pair_t(RGW_SYS_PARAM_PREFIX "zonegroup", zonegroup)); + } + } + void populate_uid(param_vec_t& params, const rgw_user *uid) { + if (uid) { + string uid_str = uid->to_str(); + if (!uid->empty()){ + params.push_back(param_pair_t(RGW_SYS_PARAM_PREFIX "uid", uid_str)); + } + } + } }; class S3RESTConn : public RGWRESTConn {