comparison Core/RestApi/RestApi.h @ 980:f1ff2a2f06cd plugins

use RestApiHierarchy inside RestApi
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 30 Jun 2014 17:41:40 +0200
parents 2a9e08136860
children 0332e6e8c679
comparison
equal deleted inserted replaced
979:624f44047238 980:f1ff2a2f06cd
41 class RestApi : public HttpHandler 41 class RestApi : public HttpHandler
42 { 42 {
43 private: 43 private:
44 RestApiHierarchy root_; 44 RestApiHierarchy root_;
45 45
46 typedef std::list< std::pair<RestApiPath*, RestApiGetCall::Handler> > GetHandlers;
47 typedef std::list< std::pair<RestApiPath*, RestApiPutCall::Handler> > PutHandlers;
48 typedef std::list< std::pair<RestApiPath*, RestApiPostCall::Handler> > PostHandlers;
49 typedef std::list< std::pair<RestApiPath*, RestApiDeleteCall::Handler> > DeleteHandlers;
50
51 GetHandlers getHandlers_;
52 PutHandlers putHandlers_;
53 PostHandlers postHandlers_;
54 DeleteHandlers deleteHandlers_;
55
56 bool IsGetAccepted(const UriComponents& uri);
57 bool IsPutAccepted(const UriComponents& uri);
58 bool IsPostAccepted(const UriComponents& uri);
59 bool IsDeleteAccepted(const UriComponents& uri);
60
61 std::string GetAcceptedMethods(const UriComponents& uri);
62
63 public: 46 public:
64 RestApi()
65 {
66 }
67
68 ~RestApi();
69
70 virtual bool Handle(HttpOutput& output, 47 virtual bool Handle(HttpOutput& output,
71 HttpMethod method, 48 HttpMethod method,
72 const UriComponents& uri, 49 const UriComponents& uri,
73 const Arguments& headers, 50 const Arguments& headers,
74 const Arguments& getArguments, 51 const Arguments& getArguments,