]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
rgw: simplify RGWUserCtl params with default arguments
authorCasey Bodley <cbodley@redhat.com>
Thu, 18 Jul 2019 20:14:21 +0000 (16:14 -0400)
committerCasey Bodley <cbodley@redhat.com>
Mon, 29 Jul 2019 19:20:50 +0000 (15:20 -0400)
Params types needed to define a non-default constructor as a workaround
for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88165

Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_user.cc
src/rgw/rgw_user.h

index 9da0785bf5072a3a2e316ab0f761b8d5b3e7ed59..4b722db263e2043b36fb7aee163968d3d2b13c77 100644 (file)
@@ -2559,17 +2559,17 @@ public:
 int RGWUserCtl::get_info_by_uid(const rgw_user& uid,
                                 RGWUserInfo *info,
                                 optional_yield y,
-                                ceph::optional_ref_default<GetParams> params)
+                                const GetParams& params)
 
 {
   return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
     return svc.user->read_user_info(op->ctx(),
                                     uid,
                                     info,
-                                    params->objv_tracker,
-                                    params->mtime,
-                                    params->cache_info,
-                                    params->attrs,
+                                    params.objv_tracker,
+                                    params.mtime,
+                                    params.cache_info,
+                                    params.attrs,
                                     y);
   });
 }
@@ -2577,13 +2577,13 @@ int RGWUserCtl::get_info_by_uid(const rgw_user& uid,
 int RGWUserCtl::get_info_by_email(const string& email,
                                   RGWUserInfo *info,
                                   optional_yield y,
-                                  ceph::optional_ref_default<GetParams> params)
+                                  const GetParams& params)
 {
   return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
     return svc.user->get_user_info_by_email(op->ctx(), email,
                                             info,
-                                            params->objv_tracker,
-                                            params->mtime,
+                                            params.objv_tracker,
+                                            params.mtime,
                                             y);
   });
 }
@@ -2591,13 +2591,13 @@ int RGWUserCtl::get_info_by_email(const string& email,
 int RGWUserCtl::get_info_by_swift(const string& swift_name,
                                   RGWUserInfo *info,
                                   optional_yield y,
-                                  ceph::optional_ref_default<GetParams> params)
+                                  const GetParams& params)
 {
   return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
     return svc.user->get_user_info_by_swift(op->ctx(), swift_name,
                                             info,
-                                            params->objv_tracker,
-                                            params->mtime,
+                                            params.objv_tracker,
+                                            params.mtime,
                                             y);
   });
 }
@@ -2605,13 +2605,13 @@ int RGWUserCtl::get_info_by_swift(const string& swift_name,
 int RGWUserCtl::get_info_by_access_key(const string& access_key,
                                        RGWUserInfo *info,
                                        optional_yield y,
-                                       ceph::optional_ref_default<GetParams> params)
+                                       const GetParams& params)
 {
   return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
     return svc.user->get_user_info_by_access_key(op->ctx(), access_key,
                                                  info,
-                                                 params->objv_tracker,
-                                                 params->mtime,
+                                                 params.objv_tracker,
+                                                 params.mtime,
                                                  y);
   });
 }
@@ -2629,30 +2629,30 @@ int RGWUserCtl::get_attrs_by_uid(const rgw_user& user_id,
 }
 
 int RGWUserCtl::store_info(const RGWUserInfo& info, optional_yield y,
-                           ceph::optional_ref_default<PutParams> params)
+                           const PutParams& params)
 {
   string key = RGWSI_User::get_meta_key(info.user_id);
 
   return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
     return svc.user->store_user_info(op->ctx(), info,
-                                     params->old_info,
-                                     params->objv_tracker,
-                                     params->mtime,
-                                     params->exclusive,
-                                     params->attrs,
+                                     params.old_info,
+                                     params.objv_tracker,
+                                     params.mtime,
+                                     params.exclusive,
+                                     params.attrs,
                                      y);
   });
 }
 
 int RGWUserCtl::remove_info(const RGWUserInfo& info, optional_yield y,
-                            ceph::optional_ref_default<RemoveParams> params)
+                            const RemoveParams& params)
 
 {
   string key = RGWSI_User::get_meta_key(info.user_id);
 
   return be_handler->call([&](RGWSI_MetaBackend_Handler::Op *op) {
     return svc.user->remove_user_info(op->ctx(), info,
-                                      params->objv_tracker,
+                                      params.objv_tracker,
                                       y);
   });
 }
index 6f5a6823a5e3524f98a87acb13d3d5ff3eaed1ad..18a6ae9d753901bd5b38be1d268ae291c39e4022 100644 (file)
@@ -18,8 +18,6 @@
 #include "rgw_formats.h"
 #include "rgw_metadata.h"
 
-#include "common/optional_ref_default.h"
-
 #define RGW_USER_ANON_ID "anonymous"
 
 #define SECRET_KEY_LEN 40
@@ -827,6 +825,8 @@ public:
     rgw_cache_entry_info *cache_info{nullptr};
     map<string, bufferlist> *attrs{nullptr};
 
+    GetParams() {}
+
     GetParams& set_objv_tracker(RGWObjVersionTracker *_objv_tracker) {
       objv_tracker = _objv_tracker;
       return *this;
@@ -855,6 +855,8 @@ public:
     bool exclusive{false};
     map<string, bufferlist> *attrs;
 
+    PutParams() {}
+
     PutParams& set_old_info(RGWUserInfo *_info) {
       old_info = _info;
       return *this;
@@ -884,20 +886,22 @@ public:
   struct RemoveParams {
     RGWObjVersionTracker *objv_tracker{nullptr};
 
+    RemoveParams() {}
+
     RemoveParams& set_objv_tracker(RGWObjVersionTracker *_objv_tracker) {
       objv_tracker = _objv_tracker;
       return *this;
     }
   };
 
-  int get_info_by_uid(const rgw_user& uid, RGWUserInfo *info, optional_yield y,
-                      ceph::optional_ref_default<GetParams> params = std::nullopt);
-  int get_info_by_email(const string& email, RGWUserInfo *info, optional_yield y,
-                        ceph::optional_ref_default<GetParams> params = std::nullopt);
-  int get_info_by_swift(const string& swift_name, RGWUserInfo *info, optional_yield y,
-                        ceph::optional_ref_default<GetParams> params = std::nullopt);
-  int get_info_by_access_key(const string& access_key, RGWUserInfo *info, optional_yield y,
-                             ceph::optional_ref_default<GetParams> params = std::nullopt);
+  int get_info_by_uid(const rgw_user& uid, RGWUserInfo *info,
+                      optional_yield y, const GetParams& params = {});
+  int get_info_by_email(const string& email, RGWUserInfo *info,
+                        optional_yield y, const GetParams& params = {});
+  int get_info_by_swift(const string& swift_name, RGWUserInfo *info,
+                        optional_yield y, const GetParams& params = {});
+  int get_info_by_access_key(const string& access_key, RGWUserInfo *info,
+                             optional_yield y, const GetParams& params = {});
 
   int get_attrs_by_uid(const rgw_user& user_id,
                        map<string, bufferlist> *attrs,
@@ -905,9 +909,9 @@ public:
                        RGWObjVersionTracker *objv_tracker = nullptr);
 
   int store_info(const RGWUserInfo& info, optional_yield y,
-                 ceph::optional_ref_default<PutParams> params);
+                 const PutParams& params = {});
   int remove_info(const RGWUserInfo& info, optional_yield y,
-                  ceph::optional_ref_default<RemoveParams> params);
+                  const RemoveParams& params = {});
 
   int add_bucket(const rgw_user& user,
                  const rgw_bucket& bucket,