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

Side by Side Diff: chrome/browser/io_thread.h

Issue 10299002: Stop refcounting URLRequestContext. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Initialize to NULL Created 8 years, 7 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
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 #ifndef CHROME_BROWSER_IO_THREAD_H_ 5 #ifndef CHROME_BROWSER_IO_THREAD_H_
6 #define CHROME_BROWSER_IO_THREAD_H_ 6 #define CHROME_BROWSER_IO_THREAD_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 10
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 scoped_refptr<net::SSLConfigService> ssl_config_service; 82 scoped_refptr<net::SSLConfigService> ssl_config_service;
83 scoped_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory; 83 scoped_ptr<net::HttpAuthHandlerFactory> http_auth_handler_factory;
84 scoped_ptr<net::HttpServerProperties> http_server_properties; 84 scoped_ptr<net::HttpServerProperties> http_server_properties;
85 scoped_ptr<net::ProxyService> proxy_script_fetcher_proxy_service; 85 scoped_ptr<net::ProxyService> proxy_script_fetcher_proxy_service;
86 scoped_ptr<net::HttpTransactionFactory> 86 scoped_ptr<net::HttpTransactionFactory>
87 proxy_script_fetcher_http_transaction_factory; 87 proxy_script_fetcher_http_transaction_factory;
88 scoped_ptr<net::FtpTransactionFactory> 88 scoped_ptr<net::FtpTransactionFactory>
89 proxy_script_fetcher_ftp_transaction_factory; 89 proxy_script_fetcher_ftp_transaction_factory;
90 scoped_ptr<net::URLRequestThrottlerManager> throttler_manager; 90 scoped_ptr<net::URLRequestThrottlerManager> throttler_manager;
91 scoped_ptr<net::URLSecurityManager> url_security_manager; 91 scoped_ptr<net::URLSecurityManager> url_security_manager;
92 // We use a separate URLRequestContext for PAC fetches, in order to break 92 // TODO(willchan): Remove proxy script fetcher context since it's not
93 // the reference cycle: 93 // necessary now that I got rid of refcounting URLRequestContexts.
94 // URLRequestContext=>PAC fetch=>URLRequest=>URLRequestContext. 94 //
95 // The first URLRequestContext is |system_url_request_context|. We introduce 95 // The first URLRequestContext is |system_url_request_context|. We introduce
96 // |proxy_script_fetcher_context| for the second context. It has a direct 96 // |proxy_script_fetcher_context| for the second context. It has a direct
97 // ProxyService, since we always directly connect to fetch the PAC script. 97 // ProxyService, since we always directly connect to fetch the PAC script.
98 scoped_refptr<net::URLRequestContext> proxy_script_fetcher_context; 98 scoped_ptr<net::URLRequestContext> proxy_script_fetcher_context;
99 scoped_ptr<net::ProxyService> system_proxy_service; 99 scoped_ptr<net::ProxyService> system_proxy_service;
100 scoped_ptr<net::HttpTransactionFactory> system_http_transaction_factory; 100 scoped_ptr<net::HttpTransactionFactory> system_http_transaction_factory;
101 scoped_ptr<net::FtpTransactionFactory> system_ftp_transaction_factory; 101 scoped_ptr<net::FtpTransactionFactory> system_ftp_transaction_factory;
102 scoped_refptr<net::URLRequestContext> system_request_context; 102 scoped_ptr<net::URLRequestContext> system_request_context;
103 SystemRequestContextLeakChecker system_request_context_leak_checker; 103 SystemRequestContextLeakChecker system_request_context_leak_checker;
104 // |system_cookie_store| and |system_server_bound_cert_service| are shared 104 // |system_cookie_store| and |system_server_bound_cert_service| are shared
105 // between |proxy_script_fetcher_context| and |system_request_context|. 105 // between |proxy_script_fetcher_context| and |system_request_context|.
106 scoped_refptr<net::CookieStore> system_cookie_store; 106 scoped_refptr<net::CookieStore> system_cookie_store;
107 scoped_ptr<net::ServerBoundCertService> system_server_bound_cert_service; 107 scoped_ptr<net::ServerBoundCertService> system_server_bound_cert_service;
108 scoped_refptr<ExtensionEventRouterForwarder> 108 scoped_refptr<ExtensionEventRouterForwarder>
109 extension_event_router_forwarder; 109 extension_event_router_forwarder;
110 scoped_ptr<chrome_browser_net::HttpPipeliningCompatibilityClient> 110 scoped_ptr<chrome_browser_net::HttpPipeliningCompatibilityClient>
111 http_pipelining_compatibility_client; 111 http_pipelining_compatibility_client;
112 }; 112 };
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 system_url_request_context_getter_; 211 system_url_request_context_getter_;
212 212
213 net::SdchManager* sdch_manager_; 213 net::SdchManager* sdch_manager_;
214 214
215 base::WeakPtrFactory<IOThread> weak_factory_; 215 base::WeakPtrFactory<IOThread> weak_factory_;
216 216
217 DISALLOW_COPY_AND_ASSIGN(IOThread); 217 DISALLOW_COPY_AND_ASSIGN(IOThread);
218 }; 218 };
219 219
220 #endif // CHROME_BROWSER_IO_THREAD_H_ 220 #endif // CHROME_BROWSER_IO_THREAD_H_
OLDNEW
« no previous file with comments | « chrome/browser/extensions/api/web_request/web_request_api_unittest.cc ('k') | chrome/browser/io_thread.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698