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 };