diff options
author | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2015-03-29 04:41:17 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2015-03-29 04:41:17 +0300 |
commit | 0c9dd8ea102db49c9702d36d8a13c013d6e5df86 (patch) | |
tree | 2b0041410439799eeb9bf3a8aae43948480cb1c8 /server/src/api_core.cpp | |
parent | d85b9e99218f4cab4410149415348d8a365c4828 (diff) |
api fixes
implemented get_module_settings
Diffstat (limited to 'server/src/api_core.cpp')
-rw-r--r-- | server/src/api_core.cpp | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/server/src/api_core.cpp b/server/src/api_core.cpp index 5412624..6cee810 100644 --- a/server/src/api_core.cpp +++ b/server/src/api_core.cpp @@ -19,23 +19,41 @@ */ -#include <api_core.h> +#include "api_core.h" +#include "main.h" +#include "api_module_base.h" +#include <boost/foreach.hpp> +extern runtime_config_s runtime_config; -bool core_api::metadata_set(const module_base *m, const std::string &setting_name, const std::vector<char> &data) + +bool core_api::metadata_set(module_base *m, const std::string &setting_name, const std::vector<char> &data) { //TODO return true; } -bool core_api::metadata_get(const module_base *m, const std::string &setting_name, std::vector<char> &data) +bool core_api::metadata_get(module_base *m, const std::string &setting_name, std::vector<char> &data) { //TODO return true; } -bool core_api::metadata_remove(const module_base *m, const std::string &setting_name) +bool core_api::metadata_remove(module_base *m, const std::string &setting_name) { //TODO return true; } + +std::map<std::string, std::string> core_api::get_module_settings(module_base *m) +{ + //TODO: + std::map<std::string, std::string> settings; + std::string module = "modules."; + module += m->get_module_info().name; + for(auto i = runtime_config.config_file.get_child(module).begin(), end = runtime_config.config_file.get_child(module).end(); i != end; ++i) + { + settings[i->first] = i->second.get_value<std::string>(""); + } + return settings; +} |