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

Unified Diff: chrome/browser/io_thread.cc

Issue 2698143004: Add ongoing events to net-export log when logging starts (Closed)
Patch Set: Added/improved some comments Created 3 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/io_thread.cc
diff --git a/chrome/browser/io_thread.cc b/chrome/browser/io_thread.cc
index 52e7ad89ba6fb93d36299b013d72524b2f9986f2..c3882dc63d6520f46d09df70db4208aa038ed5a0 100644
--- a/chrome/browser/io_thread.cc
+++ b/chrome/browser/io_thread.cc
@@ -290,7 +290,7 @@ class SystemURLRequestContextGetter : public net::URLRequestContextGetter {
public:
explicit SystemURLRequestContextGetter(IOThread* io_thread);
- // Implementation for net::UrlRequestContextGetter.
+ // net::URLRequestContextGetter implementation.
eroman 2017/02/21 22:14:23 Was this a manual change or something the linter d
wangyix1 2017/02/22 01:28:18 I manually changed this. I don't really know why.
net::URLRequestContext* GetURLRequestContext() override;
scoped_refptr<base::SingleThreadTaskRunner> GetNetworkTaskRunner()
const override;
@@ -325,6 +325,46 @@ SystemURLRequestContextGetter::GetNetworkTaskRunner() const {
return network_task_runner_;
}
+class ProxyScriptFetcherContextGetter : public net::URLRequestContextGetter {
+ public:
+ explicit ProxyScriptFetcherContextGetter(IOThread* io_thread);
+
+ // net::URLRequestContextGetter implementation.
+ net::URLRequestContext* GetURLRequestContext() override;
+ scoped_refptr<base::SingleThreadTaskRunner> GetNetworkTaskRunner()
+ const override;
+
+ protected:
+ ~ProxyScriptFetcherContextGetter() override;
+
+ private:
+ IOThread* const io_thread_; // Weak pointer, owned by BrowserProcess.
eroman 2017/02/21 22:14:23 Can remove "weak pointer" (which has specific mean
wangyix1 2017/02/22 01:28:18 Done.
+ scoped_refptr<base::SingleThreadTaskRunner> network_task_runner_;
eroman 2017/02/21 22:14:23 Instead of this member variable how about just ret
wangyix1 2017/02/22 01:28:18 Done.
+
+ base::debug::LeakTracker<ProxyScriptFetcherContextGetter> leak_tracker_;
+};
+
+ProxyScriptFetcherContextGetter::ProxyScriptFetcherContextGetter(
+ IOThread* io_thread)
+ : io_thread_(io_thread),
+ network_task_runner_(
+ BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)) {}
+
+ProxyScriptFetcherContextGetter::~ProxyScriptFetcherContextGetter() {}
+
+net::URLRequestContext*
+ProxyScriptFetcherContextGetter::GetURLRequestContext() {
+ DCHECK_CURRENTLY_ON(BrowserThread::IO);
+ DCHECK(io_thread_->globals()->proxy_script_fetcher_context.get());
+
+ return io_thread_->globals()->proxy_script_fetcher_context.get();
+}
+
+scoped_refptr<base::SingleThreadTaskRunner>
+ProxyScriptFetcherContextGetter::GetNetworkTaskRunner() const {
+ return network_task_runner_;
+}
+
IOThread::Globals::
SystemRequestContextLeakChecker::SystemRequestContextLeakChecker(
Globals* globals)
@@ -489,6 +529,11 @@ net::URLRequestContextGetter* IOThread::system_url_request_context_getter() {
return system_url_request_context_getter_.get();
}
+net::URLRequestContextGetter* IOThread::proxy_script_fetcher_context_getter() {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+ return proxy_script_fetcher_context_getter_.get();
+}
+
void IOThread::Init() {
TRACE_EVENT0("startup", "IOThread::InitAsync");
DCHECK_CURRENTLY_ON(BrowserThread::IO);
@@ -656,6 +701,8 @@ void IOThread::Init() {
ConstructProxyScriptFetcherContext(globals_, params_, net_log_));
TRACE_EVENT_END0("startup",
"IOThread::Init:ProxyScriptFetcherRequestContext");
+ proxy_script_fetcher_context_getter_ =
+ new ProxyScriptFetcherContextGetter(this);
#if defined(OS_MACOSX)
// Start observing Keychain events. This needs to be done on the UI thread,
@@ -723,6 +770,7 @@ void IOThread::CleanUp() {
globals_ = NULL;
base::debug::LeakTracker<SystemURLRequestContextGetter>::CheckForLeaks();
+ base::debug::LeakTracker<ProxyScriptFetcherContextGetter>::CheckForLeaks();
}
// static

Powered by Google App Engine
This is Rietveld 408576698