]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
common/cmdparse: Unsplit crimson/classic 46573/head
authorAdam Kupczyk <akupczyk@redhat.com>
Wed, 8 Jun 2022 14:17:22 +0000 (14:17 +0000)
committerAdam Kupczyk <akupczyk@redhat.com>
Wed, 8 Jun 2022 14:17:22 +0000 (14:17 +0000)
Merges split of cmdparse functions to ceph::common and crimson::common namespaces.
Now only one implementation is present: ceph::common::(cmdparse funcs).

Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
src/common/admin_socket.cc
src/common/cmdparse.cc
src/common/cmdparse.h
src/crimson/admin/admin_socket.cc
src/crimson/admin/osd_admin.cc
src/crimson/admin/pg_commands.cc
src/crimson/os/alienstore/CMakeLists.txt
src/messages/MMonCommand.h
src/messages/MMonCommandAck.h
src/mon/PGMap.cc
src/osd/OSDMap.cc

index 01021d94193bf10034828f61a2196b2b61ad5fa8..1f3b38649cca32b13d82a6ecac13fd4bd181b0e0 100644 (file)
@@ -552,7 +552,7 @@ AdminSocket::find_matched_hook(std::string& prefix,
   // make sure one of the registered commands with this prefix validates.
   stringstream errss;
   for (auto hook = hooks_begin; hook != hooks_end; ++hook) {
-    if (validate_cmd(m_cct, hook->second.desc, cmdmap, errss)) {
+    if (validate_cmd(hook->second.desc, cmdmap, errss)) {
       in_hook = true;
       return {0, hook->second.hook};
     }
index 368e1b726d76db615a879c0be0cdce5972009d15..009e6678c9861ab5da7d21679e04f86910cb5b5a 100644 (file)
@@ -32,7 +32,7 @@ using namespace std::literals;
  * Given a cmddesc like "foo baz name=bar,type=CephString",
  * return the prefix "foo baz".
  */
-namespace TOPNSPC::common {
+namespace ceph::common {
 std::string cmddesc_get_prefix(const std::string_view &cmddesc)
 {
   string tmp(cmddesc); // FIXME: stringstream ctor can't take string_view :(
@@ -571,8 +571,7 @@ bool validate_str_arg(std::string_view value,
   }
 }
 
-bool validate_bool(CephContext *cct,
-                 const cmdmap_t& cmdmap,
+bool validate_bool(const cmdmap_t& cmdmap,
                  const arg_desc_t& desc,
                  const std::string_view name,
                  const std::string_view type,
@@ -600,8 +599,7 @@ template<bool is_vector,
         typename Value = std::conditional_t<is_vector,
                                             vector<T>,
                                             T>>
-bool validate_arg(CephContext* cct,
-                 const cmdmap_t& cmdmap,
+bool validate_arg(const cmdmap_t& cmdmap,
                  const arg_desc_t& desc,
                  const std::string_view name,
                  const std::string_view type,
@@ -642,8 +640,7 @@ bool validate_arg(CephContext* cct,
 }
 } // anonymous namespace
 
-bool validate_cmd(CephContext* cct,
-                 const std::string& desc,
+bool validate_cmd(const std::string& desc,
                  const cmdmap_t& cmdmap,
                  std::ostream& os)
 {
@@ -658,27 +655,27 @@ bool validate_cmd(CephContext* cct,
     auto type = arg_desc["type"];
     if (arg_desc.count("n")) {
       if (type == "CephInt") {
-       return !validate_arg<true, int64_t>(cct, cmdmap, arg_desc,
+       return !validate_arg<true, int64_t>(cmdmap, arg_desc,
                                            name, type, os);
       } else if (type == "CephFloat") {
-       return !validate_arg<true, double>(cct, cmdmap, arg_desc,
+       return !validate_arg<true, double>(cmdmap, arg_desc,
                                            name, type, os);
       } else {
-       return !validate_arg<true, string>(cct, cmdmap, arg_desc,
+       return !validate_arg<true, string>(cmdmap, arg_desc,
                                           name, type, os);
       }
     } else {
       if (type == "CephInt") {
-       return !validate_arg<false, int64_t>(cct, cmdmap, arg_desc,
+       return !validate_arg<false, int64_t>(cmdmap, arg_desc,
                                            name, type, os);
       } else if (type == "CephFloat") {
-       return !validate_arg<false, double>(cct, cmdmap, arg_desc,
+       return !validate_arg<false, double>(cmdmap, arg_desc,
                                            name, type, os);
       } else if (type == "CephBool") {
-       return !validate_bool(cct, cmdmap, arg_desc,
+       return !validate_bool(cmdmap, arg_desc,
                              name, type, os);
       } else {
-       return !validate_arg<false, string>(cct, cmdmap, arg_desc,
+       return !validate_arg<false, string>(cmdmap, arg_desc,
                                            name, type, os);
       }
     }
index f6edf0cb88dfa45bfb9bde22517c663db0f326ec..fb7fb77f7b7ad939ef4caf79046db3e084e36f94 100644 (file)
@@ -22,7 +22,7 @@ typedef boost::variant<std::string,
                       std::vector<double>>  cmd_vartype;
 typedef std::map<std::string, cmd_vartype, std::less<>> cmdmap_t;
 
-namespace TOPNSPC::common {
+namespace ceph::common {
 std::string cmddesc_get_prefix(const std::string_view &cmddesc);
 std::string cmddesc_get_prenautilus_compat(const std::string &cmddesc);
 void dump_cmd_to_json(ceph::Formatter *f, uint64_t features,
@@ -118,8 +118,7 @@ cmd_putval(CephContext *cct, cmdmap_t& cmdmap, std::string_view k, const T& val)
   cmdmap.insert_or_assign(std::string{k}, val);
 }
 
-bool validate_cmd(CephContext* cct,
-                 const std::string& desc,
+bool validate_cmd(const std::string& desc,
                  const cmdmap_t& cmdmap,
                  std::ostream& os);
 extern int parse_osd_id(const char *s, std::ostream *pss);
index de7db209d2ed65bf201bb290433517aaff00d0a8..ffe0f4cbee181266774deef8fd51274f1d818b64 100644 (file)
 
 using namespace crimson::common;
 using namespace std::literals;
+using ceph::common::cmdmap_from_json;
+using ceph::common::cmd_getval;
+using ceph::common::bad_cmd_get;
+using ceph::common::validate_cmd;
+using ceph::common::dump_cmd_and_help_to_json;
 
 namespace {
 seastar::logger& logger()
@@ -154,7 +159,7 @@ auto AdminSocket::execute_command(const std::vector<std::string>& cmd,
   if (auto* parsed = std::get_if<parsed_command_t>(&maybe_parsed); parsed) {
     stringstream os;
     string desc{parsed->hook.desc};
-    if (!validate_cmd(nullptr, desc, parsed->params, os)) {
+    if (!validate_cmd(desc, parsed->params, os)) {
       logger().error("AdminSocket::execute_command: "
                      "failed to validate '{}': {}", cmd, os.str());
       ceph::bufferlist out;
index 970010c970c9d94ab1f8ef2a94d20d93ee2d2e11..306ecf0f371bef1883a2a14e846c0d02664af284 100644 (file)
@@ -30,6 +30,8 @@ using std::unique_ptr;
 using crimson::osd::OSD;
 using crimson::common::local_conf;
 using namespace crimson::common;
+using ceph::common::cmd_getval;
+using ceph::common::cmd_getval_or;
 
 namespace crimson::admin {
 
index dacfd515db481ef50efa8440f75690125345fdb6..c919111057a0a9da2a548026ce3e2a033ea5731a 100644 (file)
@@ -18,6 +18,7 @@
 using crimson::osd::OSD;
 using crimson::osd::PG;
 using namespace crimson::common;
+using ceph::common::cmd_getval;
 
 
 namespace crimson::admin::pg {
index f006ba33a850ce9aa8687dfe4aa881db1f6e9a3a..09b618d91f803a128cc44a894db82387157c173c 100644 (file)
@@ -10,7 +10,6 @@ set(crimson_alien_common_srcs
   ${PROJECT_SOURCE_DIR}/src/common/blkdev.cc
   ${PROJECT_SOURCE_DIR}/src/common/ceph_context.cc
   ${PROJECT_SOURCE_DIR}/src/common/ceph_crypto.cc
-  ${PROJECT_SOURCE_DIR}/src/common/cmdparse.cc
   ${PROJECT_SOURCE_DIR}/src/common/Finisher.cc
   ${PROJECT_SOURCE_DIR}/src/common/HeartbeatMap.cc
   ${PROJECT_SOURCE_DIR}/src/common/PluginRegistry.cc
index 29e4269e87820d2c3363fee5cee1e6d87f901f2b..0e9693ad9c24f59d993a99a189b58e8b84924898 100644 (file)
@@ -20,8 +20,8 @@
 #include <vector>
 #include <string>
 
-using TOPNSPC::common::cmdmap_from_json;
-using TOPNSPC::common::cmd_getval;
+using ceph::common::cmdmap_from_json;
+using ceph::common::cmd_getval;
 
 class MMonCommand final : public PaxosServiceMessage {
 public:
index d452035dbfc1dd8c38e9b6316637083a48f0a5de..bf96bcc639cd3108512223873d23f30af4417c3a 100644 (file)
@@ -17,8 +17,8 @@
 
 #include "messages/PaxosServiceMessage.h"
 
-using TOPNSPC::common::cmdmap_from_json;
-using TOPNSPC::common::cmd_getval;
+using ceph::common::cmdmap_from_json;
+using ceph::common::cmd_getval;
 
 class MMonCommandAck final : public PaxosServiceMessage {
 public:
index 7e2b42ea82adb4fee4631891d527bbdbcfcaf690..d064f99301778898d597b3982c87039cf6153536 100644 (file)
@@ -33,9 +33,9 @@ using std::vector;
 
 using ceph::bufferlist;
 using ceph::fixed_u_to_string;
-
-using TOPNSPC::common::cmd_getval;
-using TOPNSPC::common::cmd_getval_or;
+using ceph::common::cmd_getval;
+using ceph::common::cmd_getval_or;
+using ceph::common::cmd_putval;
 
 MEMPOOL_DEFINE_OBJECT_FACTORY(PGMapDigest, pgmap_digest, pgmap);
 MEMPOOL_DEFINE_OBJECT_FACTORY(PGMap, pgmap, pgmap);
index f5a19f9656c3344ab3be22997834e9a25822a238..99dfbce1978e1c25d33a9db40a5b4385f2086a53 100644 (file)
@@ -6487,7 +6487,7 @@ int OSDMap::parse_osd_id_list(const vector<string>& ls, set<int> *out,
       get_all_osds(*out);
       break;
     }
-    long osd = TOPNSPC::common::parse_osd_id(i->c_str(), ss);
+    long osd = ceph::common::parse_osd_id(i->c_str(), ss);
     if (osd < 0) {
       *ss << "invalid osd id '" << *i << "'";
       return -EINVAL;