diff 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
line wrap: on
line diff
--- a/Framework/Toolbox/IWebService.h	Tue Nov 13 10:36:53 2018 +0100
+++ b/Framework/Toolbox/IWebService.h	Thu Nov 15 17:28:15 2018 +0100
@@ -43,7 +43,7 @@
     MessageBroker& broker_;
     
   public:
-    typedef std::map<std::string, std::string> Headers;
+    typedef std::map<std::string, std::string> HttpHeaders;
 
     class HttpRequestSuccessMessage : public BaseMessage<MessageType_HttpRequestSuccess>
     {
@@ -51,16 +51,19 @@
       const std::string&             uri_;
       const void*                    answer_;
       size_t                         answerSize_;
+      const HttpHeaders&             answerHeaders_;
       const Orthanc::IDynamicObject* payload_;
 
     public:
       HttpRequestSuccessMessage(const std::string& uri,
                                 const void* answer,
                                 size_t answerSize,
+                                const HttpHeaders& answerHeaders,
                                 const Orthanc::IDynamicObject* payload) :
         uri_(uri),
         answer_(answer),
         answerSize_(answerSize),
+        answerHeaders_(answerHeaders),
         payload_(payload)
       {
       }
@@ -80,6 +83,11 @@
         return answerSize_;
       }
 
+      const HttpHeaders&  GetAnswerHttpHeaders() const
+      {
+        return answerHeaders_;
+      }
+
       bool HasPayload() const
       {
         return payload_ != NULL;
@@ -129,14 +137,14 @@
 
     
     virtual void GetAsync(const std::string& uri,
-                          const Headers& headers,
+                          const HttpHeaders& headers,
                           Orthanc::IDynamicObject* payload  /* takes ownership */,
                           MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback,
                           MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL,
                           unsigned int timeoutInSeconds = 60) = 0;
 
     virtual void PostAsync(const std::string& uri,
-                           const Headers& headers,
+                           const HttpHeaders& headers,
                            const std::string& body,
                            Orthanc::IDynamicObject* payload  /* takes ownership */,
                            MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback,
@@ -144,7 +152,7 @@
                            unsigned int timeoutInSeconds = 60) = 0;
 
     virtual void DeleteAsync(const std::string& uri,
-                             const Headers& headers,
+                             const HttpHeaders& headers,
                              Orthanc::IDynamicObject* payload  /* takes ownership */,
                              MessageHandler<IWebService::HttpRequestSuccessMessage>* successCallback,
                              MessageHandler<IWebService::HttpRequestErrorMessage>* failureCallback = NULL,