JavaScriptCore:
[WebKit-https.git] / WebCore / platform / TransferJobInternal.h
index 627930b..a9b4f20 100644 (file)
 #define TransferJobInternal_H_
 
 #include "KURL.h"
-#include "formdata.h"
+#include "FormData.h"
+#include <wtf/HashMap.h>
+
+#ifdef WIN32
+typedef void* HANDLE;
+#endif
+
+#if PLATFORM(GDK)
+typedef void CURL;
+#endif
 
 // The allocations and releases in TransferJobInternal are
-// definitely Cocoa-exception-free (either simple Foundation
-// classes or our own KWQResourceLoader which avoides doing work
-// in dealloc.
+// Cocoa-exception-free (either simple Foundation classes or
+// KWQResourceLoader which avoids doing work in dealloc).
 
 namespace WebCore {
 
     class TransferJobInternal
     {
     public:
-        TransferJobInternal(TransferJobClient* c, const String& method, const KURL& u)
+        TransferJobInternal(TransferJob* job, TransferJobClient* c, const String& method, const KURL& u)
             : client(c)
-              , status(0)
-              , URL(u)
-              , method(method)
-              , assembledResponseHeaders(true)
-              , retrievedCharset(true)
+            , status(0)
+            , URL(u)
+            , method(method)
+            , assembledResponseHeaders(true)
+            , retrievedCharset(true)
 #if __APPLE__
-              , loader(nil)
-              , response(nil)
+            , loader(nil)
+            , response(nil)
+#endif
+#if WIN32
+            , m_fileHandle(0)
+            , m_fileLoadTimer(job, &TransferJob::fileLoadTimer)
+            , m_resourceHandle(0)
+            , m_secondaryHandle(0)
+            , m_jobId(0)
+            , m_threadId(0)
+            , m_writing(false)
+            , m_formDataString(0)
+            , m_formDataLength(0)
+            , m_bytesRemainingToWrite(0)
+#endif
+#if PLATFORM(GDK)
+            , m_handle(0)
 #endif
         {
         }
         
-        TransferJobInternal(TransferJobClient* c, const String& method, const KURL& u, const FormData& p)
+        TransferJobInternal(TransferJob* job, TransferJobClient* c, const String& method, const KURL& u, const FormData& p)
             : client(c)
             , status(0)
             , URL(u)
@@ -66,6 +89,21 @@ namespace WebCore {
             , loader(nil)
             , response(nil)
 #endif
+#if WIN32
+            , m_fileHandle(0)
+            , m_fileLoadTimer(job, &TransferJob::fileLoadTimer)
+            , m_resourceHandle(0)
+            , m_secondaryHandle(0)
+            , m_jobId(0)
+            , m_threadId(0)
+            , m_writing(false)
+            , m_formDataString(0)
+            , m_formDataLength(0)
+            , m_bytesRemainingToWrite(0)
+#endif
+#if PLATFORM(GDK)
+            , m_handle(0)
+#endif
         {
         }
 
@@ -81,13 +119,29 @@ namespace WebCore {
         
         bool assembledResponseHeaders;
         bool retrievedCharset;
-        QString responseHeaders;
+        DeprecatedString responseHeaders;
         
 #if __APPLE__
         KWQResourceLoader* loader;
         NSURLResponse* response;
 #endif
-    };
+#if WIN32
+        HANDLE m_fileHandle;
+        Timer<TransferJob> m_fileLoadTimer;
+        HINTERNET m_resourceHandle;
+        HINTERNET m_secondaryHandle;
+        unsigned m_jobId;
+        DWORD m_threadId;
+        bool m_writing;
+        char* m_formDataString;
+        int m_formDataLength;
+        int m_bytesRemainingToWrite;
+        DeprecatedString m_postReferrer;
+#endif
+#if PLATFORM(GDK)
+        CURL *m_handle;
+#endif
+        };
 
 } // namespace WebCore