This is an automated email from the ASF dual-hosted git repository. jaydoane pushed a commit to branch config-delete-reload in repository https://gitbox.apache.org/repos/asf/couchdb.git
commit 48bb99ec509917db8ca8b45226525e7da431a71d Author: Jay Doane <[email protected]> AuthorDate: Mon Oct 16 13:11:51 2023 -0700 Factor out `config:parse_ini_files/1` --- src/config/src/config.erl | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/src/config/src/config.erl b/src/config/src/config.erl index cf8c44835..3431e9a56 100644 --- a/src/config/src/config.erl +++ b/src/config/src/config.erl @@ -344,20 +344,7 @@ handle_call({delete, Sec, Key, Persist, Reason}, _From, Config) -> {reply, Else, Config} end; handle_call(reload, _From, Config) -> - DiskKVs = lists:foldl( - fun(IniFile, DiskKVs0) -> - {ok, ParsedIniValues} = parse_ini_file(IniFile), - lists:foldl( - fun({K, V}, DiskKVs1) -> - dict:store(K, V, DiskKVs1) - end, - DiskKVs0, - ParsedIniValues - ) - end, - dict:new(), - Config#config.ini_files - ), + DiskKVs = parse_ini_files(Config#config.ini_files), % Update ets with anything we just read % from disk dict:fold( @@ -426,6 +413,22 @@ is_sensitive(Section, Key) -> _ -> false end. +parse_ini_files(IniFiles) -> + lists:foldl( + fun(IniFile, DiskKVs0) -> + {ok, ParsedIniValues} = parse_ini_file(IniFile), + lists:foldl( + fun({K, V}, DiskKVs1) -> + dict:store(K, V, DiskKVs1) + end, + DiskKVs0, + ParsedIniValues + ) + end, + dict:new(), + IniFiles + ). + parse_ini_file(IniFile) -> IniBin = read_ini_file(IniFile), ParsedIniValues = parse_ini(IniBin),
