Mercurial > hg > orthanc
diff Core/HttpServer/HttpHandler.h @ 1363:feaf2840917c
Plugins now receive duplicated GET arguments in their REST callbacks
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 20 May 2015 15:21:26 +0200 |
parents | 6e7e5ed91c2d |
children | 02f5a3f5c0a0 |
line wrap: on
line diff
--- a/Core/HttpServer/HttpHandler.h Fri May 15 17:33:43 2015 +0200 +++ b/Core/HttpServer/HttpHandler.h Wed May 20 15:21:26 2015 +0200 @@ -44,7 +44,8 @@ class HttpHandler { public: - typedef std::map<std::string, std::string> Arguments; + typedef std::map<std::string, std::string> Arguments; + typedef std::vector< std::pair<std::string, std::string> > GetArguments; virtual ~HttpHandler() { @@ -54,21 +55,28 @@ HttpMethod method, const UriComponents& uri, const Arguments& headers, - const Arguments& getArguments, + const GetArguments& getArguments, const std::string& postData) = 0; - static void ParseGetArguments(HttpHandler::Arguments& result, + static void ParseGetArguments(HttpHandler::GetArguments& result, const char* query); static void ParseGetQuery(UriComponents& uri, - HttpHandler::Arguments& getArguments, + HttpHandler::GetArguments& getArguments, const char* query); static std::string GetArgument(const Arguments& getArguments, const std::string& name, const std::string& defaultValue); + static std::string GetArgument(const GetArguments& getArguments, + const std::string& name, + const std::string& defaultValue); + static void ParseCookies(HttpHandler::Arguments& result, const HttpHandler::Arguments& httpHeaders); + + static void CompileGetArguments(Arguments& compiled, + const GetArguments& source); }; }