From ba8247eaf522e8a129b7fbbf09a6fab010746e3a Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Thu, 27 Aug 2015 01:25:05 +0300 Subject: protocol: still thinking of... client: bits of proto implementation server: config variables sigint handler bits of proto implementation --- server/src/server_session.cpp | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'server/src/server_session.cpp') diff --git a/server/src/server_session.cpp b/server/src/server_session.cpp index 25e7820..64f2cfe 100644 --- a/server/src/server_session.cpp +++ b/server/src/server_session.cpp @@ -190,6 +190,40 @@ void server_session::handle_command(client_msg *msg) send_message(&m); } break; + case CLIENT_MSG_TYPE::CLIENT_MODULES_REQUEST: + { + //TODO: + } + break; + case CLIENT_MSG_TYPE::CLIENT_CORE_INFO_REQUEST: + { + server_msg msg; + msg.set_type(SERVER_MSG_TYPE::SERVER_CORE_INFO_REPLY); + msg.mutable_server_core_info_reply()->set_version(1); + try{ + for(auto it : runtime_config.config_file.get_child("server")) //load server node + { + std::string val = it.second.get_value("empty_value"); //TODO: something better here. we need to avoid subtrees and empty vars + if(val == "" || val == "empty_value") + continue; + setting *i = msg.mutable_server_core_info_reply()->add_settings(); + i->set_name(it.first); + //TODO: is it possible to set something better than just list of core setting names ? + } + } + catch(...) + { + //TODO: + } + send_message(&msg); + + } + break; + case CLIENT_MSG_TYPE::CLIENT_DOWNLOADS_LIST_REQUEST: + { + //TODO: + } + break; default: break; } -- cgit v1.2.3