| 864 | } |
| 865 | |
| 866 | void ConfigProcessor::processIncludes( |
| 867 | XMLDocumentPtr & config, |
| 868 | const Substitutions & substitutions, |
| 869 | const std::string & include_from_path, |
| 870 | bool throw_on_bad_incl, |
| 871 | Poco::XML::DOMParser & dom_parser, |
| 872 | const LoggerPtr & log, |
| 873 | std::unordered_set<std::string> * contributing_zk_paths, |
| 874 | std::vector<std::string> * contributing_files, |
| 875 | zkutil::ZooKeeperNodeCache * zk_node_cache, |
| 876 | const Coordination::EventPtr & zk_changed_event) |
| 877 | { |
| 878 | XMLDocumentPtr include_from; |
| 879 | if (!include_from_path.empty()) |
| 880 | { |
| 881 | LOG_DEBUG(log, "Including configuration file '{}'.", include_from_path); |
| 882 | |
| 883 | include_from = parseConfig(include_from_path, dom_parser); |
| 884 | if (contributing_files) |
| 885 | contributing_files->push_back(include_from_path); |
| 886 | } |
| 887 | |
| 888 | doIncludesRecursive( |
| 889 | config, include_from, substitutions, throw_on_bad_incl, dom_parser, log, |
| 890 | getRootNode(config.get()), zk_node_cache, zk_changed_event, contributing_zk_paths); |
| 891 | } |
| 892 | |
| 893 | ConfigProcessor::LoadedConfig ConfigProcessor::loadConfig(bool allow_zk_includes, bool is_config_changed) |
| 894 | { |
nothing calls this directly
no test coverage detected