OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/page_load_metrics/observers/protocol_page_load_metrics_
observer.h" | 5 #include "chrome/browser/page_load_metrics/observers/protocol_page_load_metrics_
observer.h" |
6 | 6 |
7 #include "chrome/browser/page_load_metrics/page_load_metrics_util.h" | 7 #include "chrome/browser/page_load_metrics/page_load_metrics_util.h" |
8 | 8 |
9 page_load_metrics::PageLoadMetricsObserver::ObservePolicy | 9 page_load_metrics::PageLoadMetricsObserver::ObservePolicy |
10 ProtocolPageLoadMetricsObserver::OnStart( | 10 ProtocolPageLoadMetricsObserver::OnStart( |
11 content::NavigationHandle* navigation_handle, | 11 content::NavigationHandle* navigation_handle, |
12 const GURL& currently_committed_url, | 12 const GURL& currently_committed_url, |
13 bool started_in_foreground) { | 13 bool started_in_foreground) { |
14 return started_in_foreground ? CONTINUE_OBSERVING : STOP_OBSERVING; | 14 return started_in_foreground ? CONTINUE_OBSERVING : STOP_OBSERVING; |
15 } | 15 } |
16 | 16 |
17 page_load_metrics::PageLoadMetricsObserver::ObservePolicy | 17 page_load_metrics::PageLoadMetricsObserver::ObservePolicy |
18 ProtocolPageLoadMetricsObserver::OnCommit( | 18 ProtocolPageLoadMetricsObserver::OnCommit( |
19 content::NavigationHandle* navigation_handle) { | 19 content::NavigationHandle* navigation_handle) { |
20 connection_info_ = navigation_handle->GetConnectionInfo(); | 20 connection_info_ = navigation_handle->GetConnectionInfo(); |
21 return CONTINUE_OBSERVING; | 21 return CONTINUE_OBSERVING; |
22 } | 22 } |
23 | 23 |
24 page_load_metrics::PageLoadMetricsObserver::ObservePolicy | 24 page_load_metrics::PageLoadMetricsObserver::ObservePolicy |
25 ProtocolPageLoadMetricsObserver::OnHidden( | 25 ProtocolPageLoadMetricsObserver::OnHidden( |
26 const page_load_metrics::PageLoadTiming& timing, | 26 const page_load_metrics::mojom::PageLoadTiming& timing, |
27 const page_load_metrics::PageLoadExtraInfo& info) { | 27 const page_load_metrics::PageLoadExtraInfo& info) { |
28 return STOP_OBSERVING; | 28 return STOP_OBSERVING; |
29 } | 29 } |
30 | 30 |
31 void ProtocolPageLoadMetricsObserver::OnParseStart( | 31 void ProtocolPageLoadMetricsObserver::OnParseStart( |
32 const page_load_metrics::PageLoadTiming& timing, | 32 const page_load_metrics::mojom::PageLoadTiming& timing, |
33 const page_load_metrics::PageLoadExtraInfo& info) { | 33 const page_load_metrics::PageLoadExtraInfo& info) { |
34 switch (connection_info_) { | 34 switch (connection_info_) { |
35 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: | 35 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: |
36 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: | 36 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: |
37 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: | 37 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: |
38 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: | 38 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: |
39 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: | 39 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: |
40 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: | 40 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: |
41 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: | 41 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: |
42 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: | 42 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: |
43 return; | 43 return; |
44 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: | 44 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: |
45 PAGE_LOAD_HISTOGRAM( | 45 PAGE_LOAD_HISTOGRAM( |
46 "PageLoad.Clients.Protocol.H11.ParseTiming.NavigationToParseStart", | 46 "PageLoad.Clients.Protocol.H11.ParseTiming.NavigationToParseStart", |
47 timing.parse_timing.parse_start.value()); | 47 timing.parse_timing->parse_start.value()); |
48 break; | 48 break; |
49 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: | 49 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: |
50 PAGE_LOAD_HISTOGRAM( | 50 PAGE_LOAD_HISTOGRAM( |
51 "PageLoad.Clients.Protocol.H2.ParseTiming.NavigationToParseStart", | 51 "PageLoad.Clients.Protocol.H2.ParseTiming.NavigationToParseStart", |
52 timing.parse_timing.parse_start.value()); | 52 timing.parse_timing->parse_start.value()); |
53 break; | 53 break; |
54 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: | 54 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: |
55 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: | 55 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: |
56 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: | 56 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: |
57 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: | 57 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: |
58 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: | 58 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: |
59 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: | 59 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: |
60 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: | 60 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: |
61 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: | 61 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: |
62 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: | 62 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: |
63 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: | 63 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: |
64 PAGE_LOAD_HISTOGRAM( | 64 PAGE_LOAD_HISTOGRAM( |
65 "PageLoad.Clients.Protocol.QUIC.ParseTiming.NavigationToParseStart", | 65 "PageLoad.Clients.Protocol.QUIC.ParseTiming.NavigationToParseStart", |
66 timing.parse_timing.parse_start.value()); | 66 timing.parse_timing->parse_start.value()); |
67 break; | 67 break; |
68 } | 68 } |
69 } | 69 } |
70 | 70 |
71 void ProtocolPageLoadMetricsObserver::OnFirstContentfulPaintInPage( | 71 void ProtocolPageLoadMetricsObserver::OnFirstContentfulPaintInPage( |
72 const page_load_metrics::PageLoadTiming& timing, | 72 const page_load_metrics::mojom::PageLoadTiming& timing, |
73 const page_load_metrics::PageLoadExtraInfo& extra_info) { | 73 const page_load_metrics::PageLoadExtraInfo& extra_info) { |
74 switch (connection_info_) { | 74 switch (connection_info_) { |
75 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: | 75 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: |
76 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: | 76 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: |
77 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: | 77 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: |
78 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: | 78 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: |
79 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: | 79 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: |
80 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: | 80 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: |
81 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: | 81 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: |
82 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: | 82 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: |
83 return; | 83 return; |
84 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: | 84 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: |
85 PAGE_LOAD_HISTOGRAM( | 85 PAGE_LOAD_HISTOGRAM( |
86 "PageLoad.Clients.Protocol.H11.PaintTiming." | 86 "PageLoad.Clients.Protocol.H11.PaintTiming." |
87 "NavigationToFirstContentfulPaint", | 87 "NavigationToFirstContentfulPaint", |
88 timing.paint_timing.first_contentful_paint.value()); | 88 timing.paint_timing->first_contentful_paint.value()); |
89 PAGE_LOAD_HISTOGRAM( | 89 PAGE_LOAD_HISTOGRAM( |
90 "PageLoad.Clients.Protocol.H11.PaintTiming." | 90 "PageLoad.Clients.Protocol.H11.PaintTiming." |
91 "ParseStartToFirstContentfulPaint", | 91 "ParseStartToFirstContentfulPaint", |
92 timing.paint_timing.first_contentful_paint.value() - | 92 timing.paint_timing->first_contentful_paint.value() - |
93 timing.parse_timing.parse_start.value()); | 93 timing.parse_timing->parse_start.value()); |
94 break; | 94 break; |
95 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: | 95 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: |
96 PAGE_LOAD_HISTOGRAM( | 96 PAGE_LOAD_HISTOGRAM( |
97 "PageLoad.Clients.Protocol.H2.PaintTiming." | 97 "PageLoad.Clients.Protocol.H2.PaintTiming." |
98 "NavigationToFirstContentfulPaint", | 98 "NavigationToFirstContentfulPaint", |
99 timing.paint_timing.first_contentful_paint.value()); | 99 timing.paint_timing->first_contentful_paint.value()); |
100 PAGE_LOAD_HISTOGRAM( | 100 PAGE_LOAD_HISTOGRAM( |
101 "PageLoad.Clients.Protocol.H2.PaintTiming." | 101 "PageLoad.Clients.Protocol.H2.PaintTiming." |
102 "ParseStartToFirstContentfulPaint", | 102 "ParseStartToFirstContentfulPaint", |
103 timing.paint_timing.first_contentful_paint.value() - | 103 timing.paint_timing->first_contentful_paint.value() - |
104 timing.parse_timing.parse_start.value()); | 104 timing.parse_timing->parse_start.value()); |
105 break; | 105 break; |
106 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: | 106 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: |
107 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: | 107 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: |
108 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: | 108 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: |
109 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: | 109 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: |
110 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: | 110 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: |
111 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: | 111 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: |
112 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: | 112 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: |
113 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: | 113 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: |
114 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: | 114 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: |
115 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: | 115 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: |
116 PAGE_LOAD_HISTOGRAM( | 116 PAGE_LOAD_HISTOGRAM( |
117 "PageLoad.Clients.Protocol.QUIC.PaintTiming." | 117 "PageLoad.Clients.Protocol.QUIC.PaintTiming." |
118 "NavigationToFirstContentfulPaint", | 118 "NavigationToFirstContentfulPaint", |
119 timing.paint_timing.first_contentful_paint.value()); | 119 timing.paint_timing->first_contentful_paint.value()); |
120 PAGE_LOAD_HISTOGRAM( | 120 PAGE_LOAD_HISTOGRAM( |
121 "PageLoad.Clients.Protocol.QUIC.PaintTiming." | 121 "PageLoad.Clients.Protocol.QUIC.PaintTiming." |
122 "ParseStartToFirstContentfulPaint", | 122 "ParseStartToFirstContentfulPaint", |
123 timing.paint_timing.first_contentful_paint.value() - | 123 timing.paint_timing->first_contentful_paint.value() - |
124 timing.parse_timing.parse_start.value()); | 124 timing.parse_timing->parse_start.value()); |
125 break; | 125 break; |
126 } | 126 } |
127 } | 127 } |
128 | 128 |
129 void ProtocolPageLoadMetricsObserver::OnFirstMeaningfulPaintInMainFrameDocument( | 129 void ProtocolPageLoadMetricsObserver::OnFirstMeaningfulPaintInMainFrameDocument( |
130 const page_load_metrics::PageLoadTiming& timing, | 130 const page_load_metrics::mojom::PageLoadTiming& timing, |
131 const page_load_metrics::PageLoadExtraInfo& extra_info) { | 131 const page_load_metrics::PageLoadExtraInfo& extra_info) { |
132 switch (connection_info_) { | 132 switch (connection_info_) { |
133 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: | 133 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: |
134 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: | 134 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: |
135 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: | 135 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: |
136 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: | 136 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: |
137 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: | 137 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: |
138 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: | 138 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: |
139 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: | 139 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: |
140 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: | 140 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: |
141 return; | 141 return; |
142 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: | 142 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: |
143 PAGE_LOAD_HISTOGRAM( | 143 PAGE_LOAD_HISTOGRAM( |
144 "PageLoad.Clients.Protocol.H11.Experimental.PaintTiming." | 144 "PageLoad.Clients.Protocol.H11.Experimental.PaintTiming." |
145 "NavigationToFirstMeaningfulPaint", | 145 "NavigationToFirstMeaningfulPaint", |
146 timing.paint_timing.first_meaningful_paint.value()); | 146 timing.paint_timing->first_meaningful_paint.value()); |
147 PAGE_LOAD_HISTOGRAM( | 147 PAGE_LOAD_HISTOGRAM( |
148 "PageLoad.Clients.Protocol.H11.Experimental.PaintTiming." | 148 "PageLoad.Clients.Protocol.H11.Experimental.PaintTiming." |
149 "ParseStartToFirstMeaningfulPaint", | 149 "ParseStartToFirstMeaningfulPaint", |
150 timing.paint_timing.first_meaningful_paint.value() - | 150 timing.paint_timing->first_meaningful_paint.value() - |
151 timing.parse_timing.parse_start.value()); | 151 timing.parse_timing->parse_start.value()); |
152 break; | 152 break; |
153 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: | 153 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: |
154 PAGE_LOAD_HISTOGRAM( | 154 PAGE_LOAD_HISTOGRAM( |
155 "PageLoad.Clients.Protocol.H2.Experimental.PaintTiming." | 155 "PageLoad.Clients.Protocol.H2.Experimental.PaintTiming." |
156 "NavigationToFirstMeaningfulPaint", | 156 "NavigationToFirstMeaningfulPaint", |
157 timing.paint_timing.first_meaningful_paint.value()); | 157 timing.paint_timing->first_meaningful_paint.value()); |
158 PAGE_LOAD_HISTOGRAM( | 158 PAGE_LOAD_HISTOGRAM( |
159 "PageLoad.Clients.Protocol.H2.Experimental.PaintTiming." | 159 "PageLoad.Clients.Protocol.H2.Experimental.PaintTiming." |
160 "ParseStartToFirstMeaningfulPaint", | 160 "ParseStartToFirstMeaningfulPaint", |
161 timing.paint_timing.first_meaningful_paint.value() - | 161 timing.paint_timing->first_meaningful_paint.value() - |
162 timing.parse_timing.parse_start.value()); | 162 timing.parse_timing->parse_start.value()); |
163 break; | 163 break; |
164 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: | 164 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: |
165 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: | 165 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: |
166 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: | 166 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: |
167 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: | 167 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: |
168 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: | 168 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: |
169 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: | 169 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: |
170 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: | 170 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: |
171 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: | 171 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: |
172 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: | 172 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: |
173 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: | 173 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: |
174 PAGE_LOAD_HISTOGRAM( | 174 PAGE_LOAD_HISTOGRAM( |
175 "PageLoad.Clients.Protocol.QUIC.Experimental.PaintTiming." | 175 "PageLoad.Clients.Protocol.QUIC.Experimental.PaintTiming." |
176 "NavigationToFirstMeaningfulPaint", | 176 "NavigationToFirstMeaningfulPaint", |
177 timing.paint_timing.first_meaningful_paint.value()); | 177 timing.paint_timing->first_meaningful_paint.value()); |
178 PAGE_LOAD_HISTOGRAM( | 178 PAGE_LOAD_HISTOGRAM( |
179 "PageLoad.Clients.Protocol.QUIC.Experimental.PaintTiming." | 179 "PageLoad.Clients.Protocol.QUIC.Experimental.PaintTiming." |
180 "ParseStartToFirstMeaningfulPaint", | 180 "ParseStartToFirstMeaningfulPaint", |
181 timing.paint_timing.first_meaningful_paint.value() - | 181 timing.paint_timing->first_meaningful_paint.value() - |
182 timing.parse_timing.parse_start.value()); | 182 timing.parse_timing->parse_start.value()); |
183 break; | 183 break; |
184 } | 184 } |
185 } | 185 } |
186 | 186 |
187 void ProtocolPageLoadMetricsObserver::OnDomContentLoadedEventStart( | 187 void ProtocolPageLoadMetricsObserver::OnDomContentLoadedEventStart( |
188 const page_load_metrics::PageLoadTiming& timing, | 188 const page_load_metrics::mojom::PageLoadTiming& timing, |
189 const page_load_metrics::PageLoadExtraInfo& extra_info) { | 189 const page_load_metrics::PageLoadExtraInfo& extra_info) { |
190 switch (connection_info_) { | 190 switch (connection_info_) { |
191 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: | 191 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: |
192 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: | 192 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: |
193 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: | 193 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: |
194 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: | 194 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: |
195 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: | 195 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: |
196 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: | 196 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: |
197 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: | 197 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: |
198 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: | 198 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: |
199 return; | 199 return; |
200 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: | 200 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: |
201 PAGE_LOAD_HISTOGRAM( | 201 PAGE_LOAD_HISTOGRAM( |
202 "PageLoad.Clients.Protocol.H11.DocumentTiming." | 202 "PageLoad.Clients.Protocol.H11.DocumentTiming." |
203 "NavigationToDOMContentLoadedEventFired", | 203 "NavigationToDOMContentLoadedEventFired", |
204 timing.document_timing.dom_content_loaded_event_start.value()); | 204 timing.document_timing->dom_content_loaded_event_start.value()); |
205 break; | 205 break; |
206 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: | 206 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: |
207 PAGE_LOAD_HISTOGRAM( | 207 PAGE_LOAD_HISTOGRAM( |
208 "PageLoad.Clients.Protocol.H2.DocumentTiming." | 208 "PageLoad.Clients.Protocol.H2.DocumentTiming." |
209 "NavigationToDOMContentLoadedEventFired", | 209 "NavigationToDOMContentLoadedEventFired", |
210 timing.document_timing.dom_content_loaded_event_start.value()); | 210 timing.document_timing->dom_content_loaded_event_start.value()); |
211 break; | 211 break; |
212 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: | 212 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: |
213 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: | 213 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: |
214 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: | 214 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: |
215 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: | 215 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: |
216 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: | 216 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: |
217 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: | 217 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: |
218 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: | 218 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: |
219 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: | 219 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: |
220 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: | 220 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: |
221 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: | 221 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: |
222 PAGE_LOAD_HISTOGRAM( | 222 PAGE_LOAD_HISTOGRAM( |
223 "PageLoad.Clients.Protocol.QUIC.DocumentTiming." | 223 "PageLoad.Clients.Protocol.QUIC.DocumentTiming." |
224 "NavigationToDOMContentLoadedEventFired", | 224 "NavigationToDOMContentLoadedEventFired", |
225 timing.document_timing.dom_content_loaded_event_start.value()); | 225 timing.document_timing->dom_content_loaded_event_start.value()); |
226 break; | 226 break; |
227 } | 227 } |
228 } | 228 } |
229 | 229 |
230 void ProtocolPageLoadMetricsObserver::OnLoadEventStart( | 230 void ProtocolPageLoadMetricsObserver::OnLoadEventStart( |
231 const page_load_metrics::PageLoadTiming& timing, | 231 const page_load_metrics::mojom::PageLoadTiming& timing, |
232 const page_load_metrics::PageLoadExtraInfo& extra_info) { | 232 const page_load_metrics::PageLoadExtraInfo& extra_info) { |
233 switch (connection_info_) { | 233 switch (connection_info_) { |
234 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: | 234 case net::HttpResponseInfo::CONNECTION_INFO_UNKNOWN: |
235 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: | 235 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY2: |
236 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: | 236 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_SPDY3: |
237 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: | 237 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_14: |
238 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: | 238 case net::HttpResponseInfo::CONNECTION_INFO_DEPRECATED_HTTP2_15: |
239 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: | 239 case net::HttpResponseInfo::CONNECTION_INFO_HTTP0_9: |
240 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: | 240 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_0: |
241 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: | 241 case net::HttpResponseInfo::NUM_OF_CONNECTION_INFOS: |
242 return; | 242 return; |
243 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: | 243 case net::HttpResponseInfo::CONNECTION_INFO_HTTP1_1: |
244 PAGE_LOAD_HISTOGRAM( | 244 PAGE_LOAD_HISTOGRAM( |
245 "PageLoad.Clients.Protocol.H11.DocumentTiming." | 245 "PageLoad.Clients.Protocol.H11.DocumentTiming." |
246 "NavigationToLoadEventFired", | 246 "NavigationToLoadEventFired", |
247 timing.document_timing.load_event_start.value()); | 247 timing.document_timing->load_event_start.value()); |
248 break; | 248 break; |
249 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: | 249 case net::HttpResponseInfo::CONNECTION_INFO_HTTP2: |
250 PAGE_LOAD_HISTOGRAM( | 250 PAGE_LOAD_HISTOGRAM( |
251 "PageLoad.Clients.Protocol.H2.DocumentTiming." | 251 "PageLoad.Clients.Protocol.H2.DocumentTiming." |
252 "NavigationToLoadEventFired", | 252 "NavigationToLoadEventFired", |
253 timing.document_timing.load_event_start.value()); | 253 timing.document_timing->load_event_start.value()); |
254 break; | 254 break; |
255 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: | 255 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_UNKNOWN_VERSION: |
256 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: | 256 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_32: |
257 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: | 257 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_33: |
258 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: | 258 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_34: |
259 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: | 259 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_35: |
260 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: | 260 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_36: |
261 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: | 261 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_37: |
262 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: | 262 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_38: |
263 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: | 263 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_39: |
264 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: | 264 case net::HttpResponseInfo::CONNECTION_INFO_QUIC_40: |
265 PAGE_LOAD_HISTOGRAM( | 265 PAGE_LOAD_HISTOGRAM( |
266 "PageLoad.Clients.Protocol.QUIC.DocumentTiming." | 266 "PageLoad.Clients.Protocol.QUIC.DocumentTiming." |
267 "NavigationToLoadEventFired", | 267 "NavigationToLoadEventFired", |
268 timing.document_timing.load_event_start.value()); | 268 timing.document_timing->load_event_start.value()); |
269 break; | 269 break; |
270 } | 270 } |
271 } | 271 } |
OLD | NEW |