OLD | NEW |
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 #include "chrome/browser/net/chrome_net_log.h" | 5 #include "chrome/browser/net/chrome_net_log.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/string_util.h" | 10 #include "base/string_util.h" |
11 #include "chrome/browser/chrome_thread.h" | 11 #include "chrome/browser/chrome_thread.h" |
| 12 #include "chrome/browser/net/load_timing_observer.h" |
12 #include "chrome/browser/net/passive_log_collector.h" | 13 #include "chrome/browser/net/passive_log_collector.h" |
13 | 14 |
14 ChromeNetLog::ChromeNetLog() | 15 ChromeNetLog::ChromeNetLog() |
15 : next_id_(1), | 16 : next_id_(1), |
16 passive_collector_(new PassiveLogCollector) { | 17 passive_collector_(new PassiveLogCollector), |
| 18 load_timing_observer_(new LoadTimingObserver) { |
17 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); | 19 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); |
18 AddObserver(passive_collector_.get()); | 20 AddObserver(passive_collector_.get()); |
| 21 AddObserver(load_timing_observer_.get()); |
19 } | 22 } |
20 | 23 |
21 ChromeNetLog::~ChromeNetLog() { | 24 ChromeNetLog::~ChromeNetLog() { |
22 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); | 25 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); |
23 RemoveObserver(passive_collector_.get()); | 26 RemoveObserver(passive_collector_.get()); |
| 27 RemoveObserver(load_timing_observer_.get()); |
24 } | 28 } |
25 | 29 |
26 void ChromeNetLog::AddEntry(EventType type, | 30 void ChromeNetLog::AddEntry(EventType type, |
27 const base::TimeTicks& time, | 31 const base::TimeTicks& time, |
28 const Source& source, | 32 const Source& source, |
29 EventPhase phase, | 33 EventPhase phase, |
30 EventParameters* params) { | 34 EventParameters* params) { |
31 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); | 35 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); |
32 | 36 |
33 // Notify all of the log observers. | 37 // Notify all of the log observers. |
(...skipping 14 matching lines...) Expand all Loading... |
48 | 52 |
49 void ChromeNetLog::AddObserver(Observer* observer) { | 53 void ChromeNetLog::AddObserver(Observer* observer) { |
50 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); | 54 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); |
51 observers_.AddObserver(observer); | 55 observers_.AddObserver(observer); |
52 } | 56 } |
53 | 57 |
54 void ChromeNetLog::RemoveObserver(Observer* observer) { | 58 void ChromeNetLog::RemoveObserver(Observer* observer) { |
55 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); | 59 DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); |
56 observers_.RemoveObserver(observer); | 60 observers_.RemoveObserver(observer); |
57 } | 61 } |
58 | |
OLD | NEW |