From 83e30f63b879163a52cca57b8f6c195c9e243569 Mon Sep 17 00:00:00 2001 From: Abhishek Lekshmanan Date: Tue, 20 Oct 2020 08:23:09 +0200 Subject: [PATCH] svc: role: move prefix to Module Signed-off-by: Abhishek Lekshmanan --- src/rgw/services/svc_role_rados.cc | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/rgw/services/svc_role_rados.cc b/src/rgw/services/svc_role_rados.cc index bd5461b8ab5..91bd293d735 100644 --- a/src/rgw/services/svc_role_rados.cc +++ b/src/rgw/services/svc_role_rados.cc @@ -9,9 +9,11 @@ class RGWSI_Role_Module : public RGWSI_MBSObj_Handler_Module { RGWSI_Role_RADOS::Svc& svc; + const std::string prefix; public: - RGWSI_Role_Module(RGWSI_Role_RADOS::Svc& _svc): RGWSI_MBSObj_Handler_Module("Role"), - svc(_svc) {} + RGWSI_Role_Module(RGWSI_Role_RADOS::Svc& _svc): RGWSI_MBSObj_Handler_Module("roles"), + svc(_svc), + prefix(role_oid_prefix) {} void get_pool_and_oid(const std::string& key, rgw_pool *pool, @@ -22,24 +24,25 @@ public: } if (oid) { - *oid = key; + *oid = key_to_oid(key); } } bool is_valid_oid(const std::string& oid) override { - return boost::algorithm::starts_with(oid, role_oid_prefix); + return boost::algorithm::starts_with(oid, prefix); } std::string key_to_oid(const std::string& key) override { - return key; + return prefix + key; } + // This is called after `is_valid_oid` and is assumed to be a valid oid std::string oid_to_key(const std::string& oid) override { - return oid; + return oid.substr(prefix.size()); } const std::string& get_oid_prefix() { - return role_oid_prefix; + return prefix; } }; -- 2.39.5