Index: net/base/network_delegate.h |
diff --git a/net/base/network_delegate.h b/net/base/network_delegate.h |
index 3a29e26c9f7695a2b7a83fe59bb73f695c6ebf97..cad221e99db28d8395ad3f35ccfeb196d8e1db55 100644 |
--- a/net/base/network_delegate.h |
+++ b/net/base/network_delegate.h |
@@ -89,6 +89,7 @@ class NET_EXPORT NetworkDelegate : public base::NonThreadSafe { |
void NotifyResponseStarted(URLRequest* request); |
void NotifyNetworkBytesReceived(const URLRequest& request, |
int64_t bytes_received); |
+ void NotifyNetworkBytesSent(const URLRequest& request, int64_t bytes_sent); |
void NotifyCompleted(URLRequest* request, bool started); |
void NotifyURLRequestDestroyed(URLRequest* request); |
void NotifyURLRequestJobOrphaned(URLRequest* request); |
@@ -213,6 +214,16 @@ class NET_EXPORT NetworkDelegate : public base::NonThreadSafe { |
virtual void OnNetworkBytesReceived(const URLRequest& request, |
int64_t bytes_received) = 0; |
+ // Called when bytes are sent over the network, such as when sending request |
+ // headers or uploading request body bytes. This includes localhost requests. |
+ // |bytes_sent| is the number of bytes measured at the application layer that |
+ // have been sent over the network for this request since the last time |
+ // OnNetworkBytesSent was called. |bytes_sent| will always be greater than 0. |
+ // Currently, this is only implemented for HTTP transactions, and |bytes_sent| |
+ // does not include TLS overhead or TCP retransmits. |
+ virtual void OnNetworkBytesSent(const URLRequest& request, |
+ int64_t bytes_sent) = 0; |
+ |
// Indicates that the URL request has been completed or failed. |
// |started| indicates whether the request has been started. If false, |
// some information like the socket address is not available. |