summaryrefslogtreecommitdiffstats
path: root/webkit/glue/resource_loader_bridge.h
diff options
context:
space:
mode:
authorpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-14 12:17:16 +0000
committerpfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-14 12:17:16 +0000
commit2fd5a178fe8e1d5c87e8a598a579ed71388229df (patch)
tree8c674d34f355d564dc540ff663d16a4e140c5b5e /webkit/glue/resource_loader_bridge.h
parent6e17bb92de55577af86410a1e9709df91ec9617b (diff)
downloadchromium_src-2fd5a178fe8e1d5c87e8a598a579ed71388229df.zip
chromium_src-2fd5a178fe8e1d5c87e8a598a579ed71388229df.tar.gz
chromium_src-2fd5a178fe8e1d5c87e8a598a579ed71388229df.tar.bz2
DevTools: provide network log details to the WebCore's InspectorController.
Review URL: http://codereview.chromium.org/2645006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52310 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/resource_loader_bridge.h')
-rw-r--r--webkit/glue/resource_loader_bridge.h66
1 files changed, 66 insertions, 0 deletions
diff --git a/webkit/glue/resource_loader_bridge.h b/webkit/glue/resource_loader_bridge.h
index ba88271..73bbe4d 100644
--- a/webkit/glue/resource_loader_bridge.h
+++ b/webkit/glue/resource_loader_bridge.h
@@ -86,6 +86,64 @@ class ResourceLoaderBridge {
int routing_id;
};
+ // Structure containing timing information for the request. It addresses
+ // http://groups.google.com/group/http-archive-specification/web/har-1-1-spec
+ // and http://dev.w3.org/2006/webapi/WebTiming/ needs.
+ //
+ // All the values for starts and ends are given in milliseconds and are
+ // offsets with respect to the given base time.
+ struct LoadTimingInfo {
+ LoadTimingInfo();
+ ~LoadTimingInfo();
+
+ // All the values in this struct are given as offsets in milliseconds wrt
+ // this base time.
+ base::Time base_time;
+
+ // The time that proxy processing started. For requests with no proxy phase,
+ // this time is -1.
+ int32 proxy_start;
+
+ // The time that proxy processing ended. For reused sockets this time
+ // is -1.
+ int32 proxy_end;
+
+ // The time that DNS lookup started. For reused sockets this time is -1.
+ int32 dns_start;
+
+ // The time that DNS lookup ended. For reused sockets this time is -1.
+ int32 dns_end;
+
+ // The time that establishing connection started. For reused sockets
+ // this time is -1. Connect time includes dns time.
+ int32 connect_start;
+
+ // The time that establishing connection ended. For reused sockets this
+ // time is -1. Connect time includes dns time.
+ int32 connect_end;
+
+ // The time at which SSL handshake started. For non-HTTPS requests this
+ // is 0.
+ int32 ssl_start;
+
+ // The time at which SSL handshake ended. For non-HTTPS requests this is 0.
+ int32 ssl_end;
+
+ // The time that HTTP request started. For non-HTTP requests this is 0.
+ int32 send_start;
+
+ // The time that HTTP request ended. For non-HTTP requests this is 0.
+ int32 send_end;
+
+ // The time at which receiving HTTP headers started. For non-HTTP requests
+ // this is 0.
+ int32 receive_headers_start;
+
+ // The time at which receiving HTTP headers ended. For non-HTTP requests
+ // this is 0.
+ int32 receive_headers_end;
+ };
+
struct ResponseInfo {
ResponseInfo();
~ResponseInfo();
@@ -122,6 +180,14 @@ class ResourceLoaderBridge {
// Note: this value is only populated for main resource requests.
GURL appcache_manifest_url;
+ // Connection identifier from the underlying network stack. In case there
+ // is no associated connection, contains 0.
+ uint32 connection_id;
+
+ // Detailed timing information used by the WebTiming, HAR and Developer
+ // Tools.
+ LoadTimingInfo load_timing;
+
// True if the response was delivered using SPDY.
bool was_fetched_via_spdy;