Index: content/public/browser/resource_throttle.h |
diff --git a/content/public/browser/resource_throttle.h b/content/public/browser/resource_throttle.h |
index 7a980f2a21691357e111eeebdf469ffc317c6c63..da1054c86cfb5c26bf2890fa82190fcb934c2400 100644 |
--- a/content/public/browser/resource_throttle.h |
+++ b/content/public/browser/resource_throttle.h |
@@ -5,6 +5,8 @@ |
#ifndef CONTENT_PUBLIC_BROWSER_RESOURCE_THROTTLE_H_ |
#define CONTENT_PUBLIC_BROWSER_RESOURCE_THROTTLE_H_ |
+#include "content/common/content_export.h" |
+ |
namespace net { |
struct RedirectInfo; |
} |
@@ -20,7 +22,7 @@ class ThrottlingResourceHandler; |
// resource load. The ResourceController interface may be used to resume a |
// deferred resource load, or it may be used to cancel a resource load at any |
// time. |
-class ResourceThrottle { |
+class CONTENT_EXPORT ResourceThrottle { |
public: |
virtual ~ResourceThrottle() {} |
@@ -42,6 +44,13 @@ class ResourceThrottle { |
// returned string. |
virtual const char* GetNameForLogging() const = 0; |
+ // Whether this ResourceThrottle needs to execute WillProcessResponse before |
+ // any part of the response body is read. Normally this is false. This should |
+ // be set to true if the ResourceThrottle wants to ensure that no part of the |
+ // response body will be cached if the request is canceled in |
+ // WillProcessResponse. |
+ virtual bool MustProcessResponseBeforeReadingBody(); |
+ |
void set_controller_for_testing(ResourceController* c) { |
controller_ = c; |
} |