#include <boost/range.hpp>\r
#include <boost/range/adaptors.hpp>\r
#include <boost/range/algorithm.hpp>\r
+#include <boost/thread.hpp>\r
+#include <boost/property_tree/ptree.hpp>\r
+#include <boost/property_tree/xml_parser.hpp>\r
\r
#include <common/utility/string.h>\r
#include <common/memory/safe_ptr.h>\r
\r
auto filename = flash::find_template(env::template_folder() + _parameters.at(1));\r
\r
- std::wstringstream ss;\r
- ss << L"201 INFO OK\r\n";\r
+ std::wstringstream replyString;\r
+ replyString << L"201 INFO OK\r\n";\r
\r
- auto xml = flash::read_template_meta_info(filename);\r
- ss << widen(xml);\r
- ss << L"\r\n";\r
+ std::wstringstream str;\r
+ str << widen(flash::read_template_meta_info(filename));\r
+ boost::property_tree::wptree info;\r
+ boost::property_tree::xml_parser::read_xml(str, info, boost::property_tree::xml_parser::trim_whitespace | boost::property_tree::xml_parser::no_comments);\r
+ boost::property_tree::xml_parser::write_xml(replyString, info, boost::property_tree::xml_writer_settings<wchar_t>(' ', 3));\r
+\r
+ replyString << L"\r\n";\r
\r
- SetReplyString(ss.str());\r
+ SetReplyString(replyString.str());\r
return true;\r
}\r
catch(...)\r
\r
bool VersionCommand::DoExecute()\r
{\r
- std::wstring replyString = TEXT("201 VERSION OK\r\n SERVER: ") + env::version() + TEXT("\r\n");\r
+ std::wstring replyString = TEXT("201 VERSION OK\r\n") + env::version() + TEXT("\r\n");\r
\r
if(_parameters.size() > 0)\r
{\r
if(_parameters[0] == L"FLASH")\r
- replyString = TEXT("201 VERSION OK\r\n FLASH: ") + flash::get_version() + TEXT("\r\n");\r
+ replyString = TEXT("201 VERSION OK\r\n") + flash::get_version() + TEXT("\r\n");\r
else if(_parameters[0] == L"TEMPLATEHOST")\r
- replyString = TEXT("201 VERSION OK\r\n TEMPLATEHOST: ") + flash::get_cg_version() + TEXT("\r\n");\r
+ replyString = TEXT("201 VERSION OK\r\n") + flash::get_cg_version() + TEXT("\r\n");\r
else if(_parameters[0] != L"SERVER")\r
replyString = TEXT("403 VERSION ERROR\r\n");\r
}\r