diff OrthancFramework/Sources/HttpServer/HttpServer.h @ 4454:f20a7655fb1c

Fix upload of multiple DICOM files using one single POST call to "multipart/form-data"
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 19 Jan 2021 12:03:49 +0100
parents d9473bd5ed43
children 7053502fbf97
line wrap: on
line diff
--- a/OrthancFramework/Sources/HttpServer/HttpServer.h	Tue Jan 19 10:02:46 2021 +0100
+++ b/OrthancFramework/Sources/HttpServer/HttpServer.h	Tue Jan 19 12:03:49 2021 +0100
@@ -57,7 +57,6 @@
 
 namespace Orthanc
 {
-  class ChunkStore;
   class OrthancException;
 
   class IHttpExceptionFormatter : public boost::noncopyable
@@ -86,6 +85,9 @@
     struct PImpl;
     boost::shared_ptr<PImpl> pimpl_;
 
+    class ChunkStore;
+    class MultipartFormDataHandler;
+
     IHttpHandler *handler_;
 
     typedef std::set<std::string> RegisteredUsers;
@@ -172,8 +174,6 @@
 
     void SetIncomingHttpRequestFilter(IIncomingHttpRequestFilter& filter);
 
-    ChunkStore& GetChunkStore();
-
     bool IsValidBasicHttpAuthentication(const std::string& basic) const;
 
     void Register(IHttpHandler& handler);
@@ -211,5 +211,13 @@
     void Register(const std::vector<std::string>& root,
                   IWebDavBucket* bucket); // Takes ownership
 #endif
+
+    ORTHANC_LOCAL
+    void ProcessMultipartFormData(const std::string& remoteIp,
+                                  const std::string& username,
+                                  const UriComponents& uri,
+                                  const std::map<std::string, std::string>& headers,
+                                  const std::string& body,
+                                  const std::string& boundary);
   };
 }