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 "headless/lib/browser/headless_url_request_context_getter.h" | 5 #include "headless/lib/browser/headless_url_request_context_getter.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 | 8 |
9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
10 #include "base/single_thread_task_runner.h" | 10 #include "base/single_thread_task_runner.h" |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 net::URLRequestContext* | 60 net::URLRequestContext* |
61 HeadlessURLRequestContextGetter::GetURLRequestContext() { | 61 HeadlessURLRequestContextGetter::GetURLRequestContext() { |
62 DCHECK_CURRENTLY_ON(content::BrowserThread::IO); | 62 DCHECK_CURRENTLY_ON(content::BrowserThread::IO); |
63 if (!url_request_context_) { | 63 if (!url_request_context_) { |
64 net::URLRequestContextBuilder builder; | 64 net::URLRequestContextBuilder builder; |
65 // TODO(skyostil): Make language settings configurable. | 65 // TODO(skyostil): Make language settings configurable. |
66 builder.set_user_agent(user_agent_); | 66 builder.set_user_agent(user_agent_); |
67 // TODO(skyostil): Make these configurable. | 67 // TODO(skyostil): Make these configurable. |
68 builder.set_data_enabled(true); | 68 builder.set_data_enabled(true); |
69 builder.set_file_enabled(true); | 69 builder.set_file_enabled(true); |
70 builder.SetFileTaskRunner( | 70 builder.SetFileTaskRunner(content::BrowserThread::GetTaskRunnerForThread( |
71 content::BrowserThread::GetMessageLoopProxyForThread( | 71 content::BrowserThread::FILE)); |
72 content::BrowserThread::FILE)); | |
73 if (!proxy_server_.IsEmpty()) { | 72 if (!proxy_server_.IsEmpty()) { |
74 builder.set_proxy_service( | 73 builder.set_proxy_service( |
75 net::ProxyService::CreateFixed(proxy_server_.ToString())); | 74 net::ProxyService::CreateFixed(proxy_server_.ToString())); |
76 } else { | 75 } else { |
77 builder.set_proxy_config_service(std::move(proxy_config_service_)); | 76 builder.set_proxy_config_service(std::move(proxy_config_service_)); |
78 } | 77 } |
79 | 78 |
80 if (!host_resolver_rules_.empty()) { | 79 if (!host_resolver_rules_.empty()) { |
81 std::unique_ptr<net::HostResolver> host_resolver( | 80 std::unique_ptr<net::HostResolver> host_resolver( |
82 net::HostResolver::CreateDefaultResolver(nullptr /* net_log */)); | 81 net::HostResolver::CreateDefaultResolver(nullptr /* net_log */)); |
(...skipping 18 matching lines...) Expand all Loading... |
101 builder.SetInterceptors(std::move(request_interceptors)); | 100 builder.SetInterceptors(std::move(request_interceptors)); |
102 | 101 |
103 url_request_context_ = builder.Build(); | 102 url_request_context_ = builder.Build(); |
104 } | 103 } |
105 | 104 |
106 return url_request_context_.get(); | 105 return url_request_context_.get(); |
107 } | 106 } |
108 | 107 |
109 scoped_refptr<base::SingleThreadTaskRunner> | 108 scoped_refptr<base::SingleThreadTaskRunner> |
110 HeadlessURLRequestContextGetter::GetNetworkTaskRunner() const { | 109 HeadlessURLRequestContextGetter::GetNetworkTaskRunner() const { |
111 return content::BrowserThread::GetMessageLoopProxyForThread( | 110 return content::BrowserThread::GetTaskRunnerForThread( |
112 content::BrowserThread::IO); | 111 content::BrowserThread::IO); |
113 } | 112 } |
114 | 113 |
115 net::HostResolver* HeadlessURLRequestContextGetter::host_resolver() const { | 114 net::HostResolver* HeadlessURLRequestContextGetter::host_resolver() const { |
116 return url_request_context_->host_resolver(); | 115 return url_request_context_->host_resolver(); |
117 } | 116 } |
118 | 117 |
119 } // namespace headless | 118 } // namespace headless |
OLD | NEW |