Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Side by Side Diff: chrome/browser/net/passive_log_collector.h

Issue 6592027: Update NetLog in preparation for late binding of HttpStream jobs to requests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address nits. Created 9 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/net/passive_log_collector.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #ifndef CHROME_BROWSER_NET_PASSIVE_LOG_COLLECTOR_H_ 5 #ifndef CHROME_BROWSER_NET_PASSIVE_LOG_COLLECTOR_H_
6 #define CHROME_BROWSER_NET_PASSIVE_LOG_COLLECTOR_H_ 6 #define CHROME_BROWSER_NET_PASSIVE_LOG_COLLECTOR_H_
7 #pragma once 7 #pragma once
8 8
9 #include <deque> 9 #include <deque>
10 #include <string> 10 #include <string>
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
193 }; 193 };
194 194
195 // Specialization of SourceTracker for handling ConnectJobs. 195 // Specialization of SourceTracker for handling ConnectJobs.
196 class ConnectJobTracker : public SourceTracker { 196 class ConnectJobTracker : public SourceTracker {
197 public: 197 public:
198 static const size_t kMaxNumSources; 198 static const size_t kMaxNumSources;
199 static const size_t kMaxGraveyardSize; 199 static const size_t kMaxGraveyardSize;
200 200
201 explicit ConnectJobTracker(PassiveLogCollector* parent); 201 explicit ConnectJobTracker(PassiveLogCollector* parent);
202 202
203 protected: 203 private:
204 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 204 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
205 SourceInfo* out_info); 205 SourceInfo* out_info);
206 private:
207 DISALLOW_COPY_AND_ASSIGN(ConnectJobTracker); 206 DISALLOW_COPY_AND_ASSIGN(ConnectJobTracker);
208 }; 207 };
209 208
210 // Specialization of SourceTracker for handling Sockets. 209 // Specialization of SourceTracker for handling Sockets.
211 class SocketTracker : public SourceTracker { 210 class SocketTracker : public SourceTracker {
212 public: 211 public:
213 static const size_t kMaxNumSources; 212 static const size_t kMaxNumSources;
214 static const size_t kMaxGraveyardSize; 213 static const size_t kMaxGraveyardSize;
215 214
216 SocketTracker(); 215 SocketTracker();
217 216
218 protected: 217 private:
219 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 218 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
220 SourceInfo* out_info); 219 SourceInfo* out_info);
221 220
222 private:
223 DISALLOW_COPY_AND_ASSIGN(SocketTracker); 221 DISALLOW_COPY_AND_ASSIGN(SocketTracker);
224 }; 222 };
225 223
226 // Specialization of SourceTracker for handling net::URLRequest/SocketStream. 224 // Specialization of SourceTracker for handling net::URLRequest/SocketStream.
227 class RequestTracker : public SourceTracker { 225 class RequestTracker : public SourceTracker {
228 public: 226 public:
229 static const size_t kMaxNumSources; 227 static const size_t kMaxNumSources;
230 static const size_t kMaxGraveyardSize; 228 static const size_t kMaxGraveyardSize;
231 229
232 explicit RequestTracker(PassiveLogCollector* parent); 230 explicit RequestTracker(PassiveLogCollector* parent);
233 231
234 protected: 232 private:
235 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 233 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
236 SourceInfo* out_info); 234 SourceInfo* out_info);
237 235
238 private:
239 DISALLOW_COPY_AND_ASSIGN(RequestTracker); 236 DISALLOW_COPY_AND_ASSIGN(RequestTracker);
240 }; 237 };
241 238
242 // Specialization of SourceTracker for handling 239 // Specialization of SourceTracker for handling
243 // SOURCE_INIT_PROXY_RESOLVER. 240 // SOURCE_INIT_PROXY_RESOLVER.
244 class InitProxyResolverTracker : public SourceTracker { 241 class InitProxyResolverTracker : public SourceTracker {
245 public: 242 public:
246 static const size_t kMaxNumSources; 243 static const size_t kMaxNumSources;
247 static const size_t kMaxGraveyardSize; 244 static const size_t kMaxGraveyardSize;
248 245
249 InitProxyResolverTracker(); 246 InitProxyResolverTracker();
250 247
251 protected: 248 private:
252 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 249 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
253 SourceInfo* out_info); 250 SourceInfo* out_info);
254 251
255 private:
256 DISALLOW_COPY_AND_ASSIGN(InitProxyResolverTracker); 252 DISALLOW_COPY_AND_ASSIGN(InitProxyResolverTracker);
257 }; 253 };
258 254
259 // Tracks the log entries for the last seen SOURCE_SPDY_SESSION. 255 // Tracks the log entries for the last seen SOURCE_SPDY_SESSION.
260 class SpdySessionTracker : public SourceTracker { 256 class SpdySessionTracker : public SourceTracker {
261 public: 257 public:
262 static const size_t kMaxNumSources; 258 static const size_t kMaxNumSources;
263 static const size_t kMaxGraveyardSize; 259 static const size_t kMaxGraveyardSize;
264 260
265 SpdySessionTracker(); 261 SpdySessionTracker();
266 262
267 protected: 263 private:
268 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 264 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
269 SourceInfo* out_info); 265 SourceInfo* out_info);
270 266
271 private:
272 DISALLOW_COPY_AND_ASSIGN(SpdySessionTracker); 267 DISALLOW_COPY_AND_ASSIGN(SpdySessionTracker);
273 }; 268 };
274 269
275 // Tracks the log entries for the last seen SOURCE_HOST_RESOLVER_IMPL_REQUEST. 270 // Tracks the log entries for the last seen SOURCE_HOST_RESOLVER_IMPL_REQUEST.
276 class DNSRequestTracker : public SourceTracker { 271 class DNSRequestTracker : public SourceTracker {
277 public: 272 public:
278 static const size_t kMaxNumSources; 273 static const size_t kMaxNumSources;
279 static const size_t kMaxGraveyardSize; 274 static const size_t kMaxGraveyardSize;
280 275
281 DNSRequestTracker(); 276 DNSRequestTracker();
282 277
283 protected: 278 private:
284 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 279 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
285 SourceInfo* out_info); 280 SourceInfo* out_info);
286 281
287 private:
288 DISALLOW_COPY_AND_ASSIGN(DNSRequestTracker); 282 DISALLOW_COPY_AND_ASSIGN(DNSRequestTracker);
289 }; 283 };
290 284
291 // Tracks the log entries for the last seen SOURCE_HOST_RESOLVER_IMPL_JOB. 285 // Tracks the log entries for the last seen SOURCE_HOST_RESOLVER_IMPL_JOB.
292 class DNSJobTracker : public SourceTracker { 286 class DNSJobTracker : public SourceTracker {
293 public: 287 public:
294 static const size_t kMaxNumSources; 288 static const size_t kMaxNumSources;
295 static const size_t kMaxGraveyardSize; 289 static const size_t kMaxGraveyardSize;
296 290
297 DNSJobTracker(); 291 DNSJobTracker();
298 292
299 protected: 293 private:
300 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 294 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
301 SourceInfo* out_info); 295 SourceInfo* out_info);
302 296
303 private:
304 DISALLOW_COPY_AND_ASSIGN(DNSJobTracker); 297 DISALLOW_COPY_AND_ASSIGN(DNSJobTracker);
305 }; 298 };
306 299
307 // Tracks the log entries for the last seen SOURCE_DISK_CACHE_ENTRY. 300 // Tracks the log entries for the last seen SOURCE_DISK_CACHE_ENTRY.
308 class DiskCacheEntryTracker : public SourceTracker { 301 class DiskCacheEntryTracker : public SourceTracker {
309 public: 302 public:
310 static const size_t kMaxNumSources; 303 static const size_t kMaxNumSources;
311 static const size_t kMaxGraveyardSize; 304 static const size_t kMaxGraveyardSize;
312 305
313 DiskCacheEntryTracker(); 306 DiskCacheEntryTracker();
314 307
315 protected: 308 private:
316 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, 309 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
317 SourceInfo* out_info); 310 SourceInfo* out_info);
318 311
319 private:
320 DISALLOW_COPY_AND_ASSIGN(DiskCacheEntryTracker); 312 DISALLOW_COPY_AND_ASSIGN(DiskCacheEntryTracker);
321 }; 313 };
322 314
315 class HttpStreamJobTracker : public SourceTracker {
316 public:
317 static const size_t kMaxNumSources;
318 static const size_t kMaxGraveyardSize;
319
320 explicit HttpStreamJobTracker(PassiveLogCollector* parent);
321
322 private:
323 virtual Action DoAddEntry(const ChromeNetLog::Entry& entry,
324 SourceInfo* out_info);
325 DISALLOW_COPY_AND_ASSIGN(HttpStreamJobTracker);
326 };
327
328
323 PassiveLogCollector(); 329 PassiveLogCollector();
324 ~PassiveLogCollector(); 330 ~PassiveLogCollector();
325 331
326 // ThreadSafeObserver implementation: 332 // ThreadSafeObserver implementation:
327 virtual void OnAddEntry(net::NetLog::EventType type, 333 virtual void OnAddEntry(net::NetLog::EventType type,
328 const base::TimeTicks& time, 334 const base::TimeTicks& time,
329 const net::NetLog::Source& source, 335 const net::NetLog::Source& source,
330 net::NetLog::EventPhase phase, 336 net::NetLog::EventPhase phase,
331 net::NetLog::EventParameters* params); 337 net::NetLog::EventParameters* params);
332 338
(...skipping 17 matching lines...) Expand all
350 GlobalSourceTracker global_source_tracker_; 356 GlobalSourceTracker global_source_tracker_;
351 ConnectJobTracker connect_job_tracker_; 357 ConnectJobTracker connect_job_tracker_;
352 SocketTracker socket_tracker_; 358 SocketTracker socket_tracker_;
353 RequestTracker url_request_tracker_; 359 RequestTracker url_request_tracker_;
354 RequestTracker socket_stream_tracker_; 360 RequestTracker socket_stream_tracker_;
355 InitProxyResolverTracker init_proxy_resolver_tracker_; 361 InitProxyResolverTracker init_proxy_resolver_tracker_;
356 SpdySessionTracker spdy_session_tracker_; 362 SpdySessionTracker spdy_session_tracker_;
357 DNSRequestTracker dns_request_tracker_; 363 DNSRequestTracker dns_request_tracker_;
358 DNSJobTracker dns_job_tracker_; 364 DNSJobTracker dns_job_tracker_;
359 DiskCacheEntryTracker disk_cache_entry_tracker_; 365 DiskCacheEntryTracker disk_cache_entry_tracker_;
366 HttpStreamJobTracker http_stream_job_tracker_;
360 367
361 // This array maps each NetLog::SourceType to one of the tracker instances 368 // This array maps each NetLog::SourceType to one of the tracker instances
362 // defined above. Use of this array avoid duplicating the list of trackers 369 // defined above. Use of this array avoid duplicating the list of trackers
363 // elsewhere. 370 // elsewhere.
364 SourceTrackerInterface* trackers_[net::NetLog::SOURCE_COUNT]; 371 SourceTrackerInterface* trackers_[net::NetLog::SOURCE_COUNT];
365 372
366 // The count of how many events have flowed through this log. Used to set the 373 // The count of how many events have flowed through this log. Used to set the
367 // "order" field on captured events. 374 // "order" field on captured events.
368 uint32 num_events_seen_; 375 uint32 num_events_seen_;
369 376
370 DISALLOW_COPY_AND_ASSIGN(PassiveLogCollector); 377 DISALLOW_COPY_AND_ASSIGN(PassiveLogCollector);
371 }; 378 };
372 379
373 #endif // CHROME_BROWSER_NET_PASSIVE_LOG_COLLECTOR_H_ 380 #endif // CHROME_BROWSER_NET_PASSIVE_LOG_COLLECTOR_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/net/passive_log_collector.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698