summaryrefslogtreecommitdiffstats
path: root/chrome/browser/devtools/devtools_network_transaction.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/devtools/devtools_network_transaction.h')
-rw-r--r--chrome/browser/devtools/devtools_network_transaction.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/chrome/browser/devtools/devtools_network_transaction.h b/chrome/browser/devtools/devtools_network_transaction.h
index 5a51ab2..37e84ed 100644
--- a/chrome/browser/devtools/devtools_network_transaction.h
+++ b/chrome/browser/devtools/devtools_network_transaction.h
@@ -47,6 +47,13 @@ class DevToolsNetworkTransaction : public net::HttpTransaction {
// Runs callback (if any) with net::ERR_INTERNET_DISCONNECTED result value.
void Fail();
+ int64_t throttled_byte_count() const { return throttled_byte_count_; }
+ void DecreaseThrottledByteCount(int64_t delta) {
+ throttled_byte_count_ -= delta;
+ }
+
+ void FireThrottledCallback();
+
// HttpTransaction methods:
virtual int Start(
const net::HttpRequestInfo* request,
@@ -102,6 +109,25 @@ class DevToolsNetworkTransaction : public net::HttpTransaction {
// True if Fail was already invoked.
bool failed_;
+ enum CallbackType {
+ NONE,
+ READ,
+ RESTART_IGNORING_LAST_ERROR,
+ RESTART_WITH_AUTH,
+ RESTART_WITH_CERTIFICATE,
+ START
+ };
+
+ int SetupCallback(
+ net::CompletionCallback callback,
+ int result,
+ CallbackType callback_type);
+
+ void Throttle(int result);
+
+ int throttled_result_;
+ int64_t throttled_byte_count_;
+ CallbackType callback_type_;
net::CompletionCallback proxy_callback_;
net::CompletionCallback callback_;