OSDN Git Service

Merge WebKit at r84325: Initial merge by git.
[android-x86/external-webkit.git] / Source / WebCore / platform / network / ResourceResponseBase.h
index e0774c2..250411c 100644 (file)
 #include <wtf/PassOwnPtr.h>
 #include <wtf/RefPtr.h>
 
+#if OS(SOLARIS)
+#include <sys/time.h> // For time_t structure.
+#endif
+
 namespace WebCore {
 
 class ResourceResponse;
@@ -93,6 +97,7 @@ public:
     bool cacheControlContainsNoCache() const;
     bool cacheControlContainsNoStore() const;
     bool cacheControlContainsMustRevalidate() const;
+    bool hasCacheValidatorFields() const;
     double cacheControlMaxAge() const;
     double date() const;
     double age() const;
@@ -124,13 +129,19 @@ public:
     static bool compare(const ResourceResponse&, const ResourceResponse&);
 
 protected:
+    enum InitLevel {
+        Uninitialized,
+        CommonFieldsOnly,
+        AllFields
+    };
+
     ResourceResponseBase();
     ResourceResponseBase(const KURL& url, const String& mimeType, long long expectedLength, const String& textEncodingName, const String& filename);
 
-    void lazyInit() const;
+    void lazyInit(InitLevel) const;
 
     // The ResourceResponse subclass may "shadow" this method to lazily initialize platform specific fields
-    void platformLazyInit() { }
+    void platformLazyInit(InitLevel) { }
 
     // The ResourceResponse subclass may "shadow" this method to compare platform specific fields
     static bool platformCompare(const ResourceResponse&, const ResourceResponse&) { return true; }