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

Side by Side Diff: android_webview/browser/net/aw_url_request_context_getter.cc

Issue 1303493002: Make UrlRequestContextBuilder take scoped_ptr's (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 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
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 "android_webview/browser/net/aw_url_request_context_getter.h" 5 #include "android_webview/browser/net/aw_url_request_context_getter.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "android_webview/browser/aw_browser_context.h" 9 #include "android_webview/browser/aw_browser_context.h"
10 #include "android_webview/browser/aw_content_browser_client.h" 10 #include "android_webview/browser/aw_content_browser_client.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 *base::CommandLine::ForCurrentProcess(); 57 *base::CommandLine::ForCurrentProcess();
58 if (command_line.HasSwitch(switches::kHostResolverRules)) { 58 if (command_line.HasSwitch(switches::kHostResolverRules)) {
59 // If hostname remappings were specified on the command-line, layer these 59 // If hostname remappings were specified on the command-line, layer these
60 // rules on top of the real host resolver. This allows forwarding all 60 // rules on top of the real host resolver. This allows forwarding all
61 // requests through a designated test server. 61 // requests through a designated test server.
62 scoped_ptr<net::MappedHostResolver> host_resolver( 62 scoped_ptr<net::MappedHostResolver> host_resolver(
63 new net::MappedHostResolver( 63 new net::MappedHostResolver(
64 net::HostResolver::CreateDefaultResolver(NULL))); 64 net::HostResolver::CreateDefaultResolver(NULL)));
65 host_resolver->SetRulesFromString( 65 host_resolver->SetRulesFromString(
66 command_line.GetSwitchValueASCII(switches::kHostResolverRules)); 66 command_line.GetSwitchValueASCII(switches::kHostResolverRules));
67 builder->set_host_resolver(host_resolver.release()); 67 builder->set_host_resolver(host_resolver.Pass());
68 } 68 }
69 } 69 }
70 70
71 void ApplyCmdlineOverridesToNetworkSessionParams( 71 void ApplyCmdlineOverridesToNetworkSessionParams(
72 net::HttpNetworkSession::Params* params) { 72 net::HttpNetworkSession::Params* params) {
73 int value; 73 int value;
74 const base::CommandLine& command_line = 74 const base::CommandLine& command_line =
75 *base::CommandLine::ForCurrentProcess(); 75 *base::CommandLine::ForCurrentProcess();
76 if (command_line.HasSwitch(switches::kTestingFixedHttpPort)) { 76 if (command_line.HasSwitch(switches::kTestingFixedHttpPort)) {
77 base::StringToInt(command_line.GetSwitchValueASCII( 77 base::StringToInt(command_line.GetSwitchValueASCII(
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 DCHECK_CURRENTLY_ON(BrowserThread::IO); 196 DCHECK_CURRENTLY_ON(BrowserThread::IO);
197 DCHECK(!url_request_context_); 197 DCHECK(!url_request_context_);
198 198
199 net::URLRequestContextBuilder builder; 199 net::URLRequestContextBuilder builder;
200 scoped_ptr<AwNetworkDelegate> aw_network_delegate(new AwNetworkDelegate()); 200 scoped_ptr<AwNetworkDelegate> aw_network_delegate(new AwNetworkDelegate());
201 201
202 AwBrowserContext* browser_context = AwBrowserContext::GetDefault(); 202 AwBrowserContext* browser_context = AwBrowserContext::GetDefault();
203 DCHECK(browser_context); 203 DCHECK(browser_context);
204 204
205 builder.set_network_delegate( 205 builder.set_network_delegate(
206 browser_context->GetDataReductionProxyIOData()->CreateNetworkDelegate( 206 browser_context->GetDataReductionProxyIOData()
207 aw_network_delegate.Pass(), 207 ->CreateNetworkDelegate(
208 false /* No UMA is produced to track bypasses. */ ).release()); 208 aw_network_delegate.Pass(),
209 false /* No UMA is produced to track bypasses. */)
210 .Pass());
209 #if !defined(DISABLE_FTP_SUPPORT) 211 #if !defined(DISABLE_FTP_SUPPORT)
210 builder.set_ftp_enabled(false); // Android WebView does not support ftp yet. 212 builder.set_ftp_enabled(false); // Android WebView does not support ftp yet.
211 #endif 213 #endif
212 DCHECK(proxy_config_service_.get()); 214 DCHECK(proxy_config_service_.get());
213 // Android provides a local HTTP proxy that handles all the proxying. 215 // Android provides a local HTTP proxy that handles all the proxying.
214 // Create the proxy without a resolver since we rely on this local HTTP proxy. 216 // Create the proxy without a resolver since we rely on this local HTTP proxy.
215 // TODO(sgurun) is this behavior guaranteed through SDK? 217 // TODO(sgurun) is this behavior guaranteed through SDK?
216 builder.set_proxy_service( 218 builder.set_proxy_service(
217 net::ProxyService::CreateWithoutProxyResolver( 219 make_scoped_ptr(net::ProxyService::CreateWithoutProxyResolver(
218 proxy_config_service_.release(), 220 proxy_config_service_.release(), net_log_.get())));
219 net_log_.get()));
220 builder.set_net_log(net_log_.get()); 221 builder.set_net_log(net_log_.get());
221 builder.SetCookieAndChannelIdStores(cookie_store_, NULL); 222 builder.SetCookieAndChannelIdStores(cookie_store_, NULL);
222 ApplyCmdlineOverridesToURLRequestContextBuilder(&builder); 223 ApplyCmdlineOverridesToURLRequestContextBuilder(&builder);
223 224
224 url_request_context_.reset(builder.Build()); 225 url_request_context_ = builder.Build().Pass();
225 // TODO(mnaganov): Fix URLRequestContextBuilder to use proper threads. 226 // TODO(mnaganov): Fix URLRequestContextBuilder to use proper threads.
226 net::HttpNetworkSession::Params network_session_params; 227 net::HttpNetworkSession::Params network_session_params;
227 228
228 PopulateNetworkSessionParams(url_request_context_.get(), 229 PopulateNetworkSessionParams(url_request_context_.get(),
229 &network_session_params); 230 &network_session_params);
230 231
231 net::HttpCache* main_cache = new net::HttpCache( 232 net::HttpCache* main_cache = new net::HttpCache(
232 network_session_params, 233 network_session_params,
233 new net::HttpCache::DefaultBackend( 234 new net::HttpCache::DefaultBackend(
234 net::DISK_CACHE, 235 net::DISK_CACHE,
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 return net_log_.get(); 276 return net_log_.get();
276 } 277 }
277 278
278 void AwURLRequestContextGetter::SetKeyOnIO(const std::string& key) { 279 void AwURLRequestContextGetter::SetKeyOnIO(const std::string& key) {
279 DCHECK(AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()); 280 DCHECK(AwBrowserContext::GetDefault()->GetDataReductionProxyIOData());
280 AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()-> 281 AwBrowserContext::GetDefault()->GetDataReductionProxyIOData()->
281 request_options()->SetKeyOnIO(key); 282 request_options()->SetKeyOnIO(key);
282 } 283 }
283 284
284 } // namespace android_webview 285 } // namespace android_webview
OLDNEW
« no previous file with comments | « no previous file | chrome/service/net/service_url_request_context_getter.cc » ('j') | device/test/usb_test_gadget_impl.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698