From 4b1e82eaaa602dfa3e21b5adc0e9a7ae24359974 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 16 Nov 2021 17:48:27 -0500 Subject: [PATCH] mon/ConfigMap: push kv parsing logic into add_option() Push shared code into ConfigMap from mon + mgr. Pass in a function to fetch the Option*, since in the mon case it may come from somewhere other than g_conf. Signed-off-by: Sage Weil (cherry picked from commit d8ccd221549cdd28702932deb148f075cb6d88b3) Fixed conflict: `mopt.localized_name = name;` is added to add_option() (due to 3821722e5660437298a7c0f41e1061d363090103) --- src/mgr/ActivePyModules.cc | 41 +++-------------------- src/mon/ConfigMap.cc | 57 ++++++++++++++++++++++++++++++++ src/mon/ConfigMap.h | 7 ++++ src/mon/ConfigMonitor.cc | 68 +++++++++----------------------------- 4 files changed, 84 insertions(+), 89 deletions(-) diff --git a/src/mgr/ActivePyModules.cc b/src/mgr/ActivePyModules.cc index 701b41bef8e..4f75670591a 100644 --- a/src/mgr/ActivePyModules.cc +++ b/src/mgr/ActivePyModules.cc @@ -866,42 +866,11 @@ void ActivePyModules::_refresh_config_map() string who; config_map.parse_key(key, &name, &who); - const Option *opt = g_conf().find_option(name); - if (!opt) { - config_map.stray_options.push_back( - std::unique_ptr