Mercurial > hg > orthanc-stone
comparison Framework/Toolbox/IWebService.h @ 417:aee3d7941c9b
preparing to load images using DICOMweb
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 15 Nov 2018 17:28:15 +0100 |
parents | 939f626eb6d7 |
children | 3a8bcc45c221 b70e9be013e4 |
comparison
equal
deleted
inserted
replaced
415:c0589c3173fd | 417:aee3d7941c9b |
---|---|
41 { | 41 { |
42 protected: | 42 protected: |
43 MessageBroker& broker_; | 43 MessageBroker& broker_; |
44 | 44 |
45 public: | 45 public: |
46 typedef std::map<std::string, std::string> Headers; | 46 typedef std::map<std::string, std::string> HttpHeaders; |
47 | 47 |
48 class HttpRequestSuccessMessage : public BaseMessage<MessageType_HttpRequestSuccess> | 48 class HttpRequestSuccessMessage : public BaseMessage<MessageType_HttpRequestSuccess> |
49 { | 49 { |
50 private: | 50 private: |
51 const std::string& uri_; | 51 const std::string& uri_; |
52 const void* answer_; | 52 const void* answer_; |
53 size_t answerSize_; | 53 size_t answerSize_; |
54 const HttpHeaders& answerHeaders_; | |
54 const Orthanc::IDynamicObject* payload_; | 55 const Orthanc::IDynamicObject* payload_; |
55 | 56 |
56 public: | 57 public: |
57 HttpRequestSuccessMessage(const std::string& uri, | 58 HttpRequestSuccessMessage(const std::string& uri, |
58 const void* answer, | 59 const void* answer, |
59 size_t answerSize, | 60 size_t answerSize, |
61 const HttpHeaders& answerHeaders, | |
60 const Orthanc::IDynamicObject* payload) : | 62 const Orthanc::IDynamicObject* payload) : |
61 uri_(uri), | 63 uri_(uri), |
62 answer_(answer), | 64 answer_(answer), |
63 answerSize_(answerSize), | 65 answerSize_(answerSize), |
66 answerHeaders_(answerHeaders), | |
64 payload_(payload) | 67 payload_(payload) |
65 { | 68 { |
66 } | 69 } |
67 | 70 |
68 const std::string& GetUri() const | 71 const std::string& GetUri() const |
76 } | 79 } |
77 | 80 |
78 size_t GetAnswerSize() const | 81 size_t GetAnswerSize() const |
79 { | 82 { |
80 return answerSize_; | 83 return answerSize_; |
84 } | |
85 | |
86 const HttpHeaders& GetAnswerHttpHeaders() const | |
87 { | |
88 return answerHeaders_; | |
81 } | 89 } |
82 | 90 |
83 bool HasPayload() const | 91 bool HasPayload() const |
84 { | 92 { |
85 return payload_ != NULL; | 93 return payload_ != NULL; |
127 { | 135 { |
128 } | 136 } |
129 | 137 |
130 | 138 |
131 virtual void GetAsync(const std::string& uri, | 139 virtual void GetAsync(const std::string& uri, |
132 const Headers& headers, | 140 const HttpHeaders& headers, |
133 Orthanc::IDynamicObject* payload /* takes ownership */, | 141 Orthanc::IDynamicObject* payload /* takes ownership */, |
134 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, | 142 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, |
135 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, | 143 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, |
136 unsigned int timeoutInSeconds = 60) = 0; | 144 unsigned int timeoutInSeconds = 60) = 0; |
137 | 145 |
138 virtual void PostAsync(const std::string& uri, | 146 virtual void PostAsync(const std::string& uri, |
139 const Headers& headers, | 147 const HttpHeaders& headers, |
140 const std::string& body, | 148 const std::string& body, |
141 Orthanc::IDynamicObject* payload /* takes ownership */, | 149 Orthanc::IDynamicObject* payload /* takes ownership */, |
142 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, | 150 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, |
143 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, | 151 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, |
144 unsigned int timeoutInSeconds = 60) = 0; | 152 unsigned int timeoutInSeconds = 60) = 0; |
145 | 153 |
146 virtual void DeleteAsync(const std::string& uri, | 154 virtual void DeleteAsync(const std::string& uri, |
147 const Headers& headers, | 155 const HttpHeaders& headers, |
148 Orthanc::IDynamicObject* payload /* takes ownership */, | 156 Orthanc::IDynamicObject* payload /* takes ownership */, |
149 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, | 157 MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback, |
150 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, | 158 MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL, |
151 unsigned int timeoutInSeconds = 60) = 0; | 159 unsigned int timeoutInSeconds = 60) = 0; |
152 }; | 160 }; |