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

Side by Side Diff: chrome/browser/net/chrome_net_log.cc

Issue 10399083: Make NetLog take in callbacks that return Values (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Fix merge error Created 8 years, 6 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 | « chrome/browser/net/chrome_net_log.h ('k') | chrome/browser/net/chrome_net_log_unittest.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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/string_number_conversions.h" 9 #include "base/string_number_conversions.h"
10 #include "base/string_util.h" 10 #include "base/string_util.h"
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 } 42 }
43 } 43 }
44 44
45 ChromeNetLog::~ChromeNetLog() { 45 ChromeNetLog::~ChromeNetLog() {
46 // Remove the observers we own before we're destroyed. 46 // Remove the observers we own before we're destroyed.
47 RemoveThreadSafeObserver(load_timing_observer_.get()); 47 RemoveThreadSafeObserver(load_timing_observer_.get());
48 if (net_log_logger_.get()) 48 if (net_log_logger_.get())
49 RemoveThreadSafeObserver(net_log_logger_.get()); 49 RemoveThreadSafeObserver(net_log_logger_.get());
50 } 50 }
51 51
52 void ChromeNetLog::AddEntry( 52 void ChromeNetLog::OnAddEntry(const net::NetLog::Entry& entry) {
53 EventType type,
54 const Source& source,
55 EventPhase phase,
56 const scoped_refptr<EventParameters>& params) {
57 base::TimeTicks time(base::TimeTicks::Now());
58
59 base::AutoLock lock(lock_); 53 base::AutoLock lock(lock_);
60 54
61 // Notify all of the log observers. 55 // Notify all of the log observers.
62 FOR_EACH_OBSERVER(ThreadSafeObserver, observers_, 56 FOR_EACH_OBSERVER(ThreadSafeObserver, observers_, OnAddEntry(entry));
63 OnAddEntry(type, time, source, phase, params));
64 } 57 }
65 58
66 uint32 ChromeNetLog::NextID() { 59 uint32 ChromeNetLog::NextID() {
67 return base::subtle::NoBarrier_AtomicIncrement(&last_id_, 1); 60 return base::subtle::NoBarrier_AtomicIncrement(&last_id_, 1);
68 } 61 }
69 62
70 net::NetLog::LogLevel ChromeNetLog::GetLogLevel() const { 63 net::NetLog::LogLevel ChromeNetLog::GetLogLevel() const {
71 base::subtle::Atomic32 log_level = 64 base::subtle::Atomic32 log_level =
72 base::subtle::NoBarrier_Load(&effective_log_level_); 65 base::subtle::NoBarrier_Load(&effective_log_level_);
73 return static_cast<net::NetLog::LogLevel>(log_level); 66 return static_cast<net::NetLog::LogLevel>(log_level);
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 LogLevel new_effective_log_level = base_log_level_; 104 LogLevel new_effective_log_level = base_log_level_;
112 ObserverListBase<ThreadSafeObserver>::Iterator it(observers_); 105 ObserverListBase<ThreadSafeObserver>::Iterator it(observers_);
113 ThreadSafeObserver* observer; 106 ThreadSafeObserver* observer;
114 while ((observer = it.GetNext()) != NULL) { 107 while ((observer = it.GetNext()) != NULL) {
115 new_effective_log_level = 108 new_effective_log_level =
116 std::min(new_effective_log_level, observer->log_level()); 109 std::min(new_effective_log_level, observer->log_level());
117 } 110 }
118 base::subtle::NoBarrier_Store(&effective_log_level_, 111 base::subtle::NoBarrier_Store(&effective_log_level_,
119 new_effective_log_level); 112 new_effective_log_level);
120 } 113 }
OLDNEW
« no previous file with comments | « chrome/browser/net/chrome_net_log.h ('k') | chrome/browser/net/chrome_net_log_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698