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

Side by Side Diff: chrome/browser/profiles/profile_impl_io_data.h

Issue 778463002: Wrapped data reduction proxy initialization into its own class (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@network-delegate
Patch Set: Updated test Created 5 years, 11 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 #ifndef CHROME_BROWSER_PROFILES_PROFILE_IMPL_IO_DATA_H_ 5 #ifndef CHROME_BROWSER_PROFILES_PROFILE_IMPL_IO_DATA_H_
6 #define CHROME_BROWSER_PROFILES_PROFILE_IMPL_IO_DATA_H_ 6 #define CHROME_BROWSER_PROFILES_PROFILE_IMPL_IO_DATA_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/containers/hash_tables.h" 10 #include "base/containers/hash_tables.h"
11 #include "base/memory/ref_counted.h" 11 #include "base/memory/ref_counted.h"
12 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" 12 #include "chrome/browser/custom_handlers/protocol_handler_registry.h"
13 #include "chrome/browser/net/chrome_url_request_context_getter.h" 13 #include "chrome/browser/net/chrome_url_request_context_getter.h"
14 #include "chrome/browser/profiles/profile_io_data.h" 14 #include "chrome/browser/profiles/profile_io_data.h"
15 #include "content/public/browser/cookie_store_factory.h" 15 #include "content/public/browser/cookie_store_factory.h"
16 16
17 namespace chrome_browser_net { 17 namespace chrome_browser_net {
18 class Predictor; 18 class Predictor;
19 } // namespace chrome_browser_net 19 } // namespace chrome_browser_net
20 20
21 namespace content { 21 namespace content {
22 class CookieCryptoDelegate; 22 class CookieCryptoDelegate;
23 } // namespace content 23 } // namespace content
24 24
25 namespace data_reduction_proxy { 25 namespace data_reduction_proxy {
26 class DataReductionProxyConfigurator;
27 class DataReductionProxyNetworkDelegate; 26 class DataReductionProxyNetworkDelegate;
28 } // namespace data_reduction_proxy 27 } // namespace data_reduction_proxy
29 28
30 namespace domain_reliability { 29 namespace domain_reliability {
31 class DomainReliabilityMonitor; 30 class DomainReliabilityMonitor;
32 } // namespace domain_reliability 31 } // namespace domain_reliability
33 32
34 namespace net { 33 namespace net {
35 class FtpTransactionFactory; 34 class FtpTransactionFactory;
36 class HttpServerProperties; 35 class HttpServerProperties;
(...skipping 24 matching lines...) Expand all
61 int cache_max_size, 60 int cache_max_size,
62 const base::FilePath& media_cache_path, 61 const base::FilePath& media_cache_path,
63 int media_cache_max_size, 62 int media_cache_max_size,
64 const base::FilePath& extensions_cookie_path, 63 const base::FilePath& extensions_cookie_path,
65 const base::FilePath& profile_path, 64 const base::FilePath& profile_path,
66 const base::FilePath& infinite_cache_path, 65 const base::FilePath& infinite_cache_path,
67 chrome_browser_net::Predictor* predictor, 66 chrome_browser_net::Predictor* predictor,
68 content::CookieStoreConfig::SessionCookieMode session_cookie_mode, 67 content::CookieStoreConfig::SessionCookieMode session_cookie_mode,
69 storage::SpecialStoragePolicy* special_storage_policy, 68 storage::SpecialStoragePolicy* special_storage_policy,
70 scoped_ptr<domain_reliability::DomainReliabilityMonitor> 69 scoped_ptr<domain_reliability::DomainReliabilityMonitor>
71 domain_reliability_monitor, 70 domain_reliability_monitor);
72 const base::Callback<void(bool)>& data_reduction_proxy_unavailable,
73 scoped_ptr<data_reduction_proxy::DataReductionProxyConfigurator>
74 data_reduction_proxy_configurator,
75 scoped_ptr<data_reduction_proxy::DataReductionProxyParams>
76 data_reduction_proxy_params,
77 scoped_ptr<data_reduction_proxy::DataReductionProxyStatisticsPrefs>
78 data_reduction_proxy_statistics_prefs,
79 scoped_ptr<data_reduction_proxy::DataReductionProxyEventStore>
80 data_reduction_proxy_event_store);
81 71
82 // These Create*ContextGetter() functions are only exposed because the 72 // These Create*ContextGetter() functions are only exposed because the
83 // circular relationship between Profile, ProfileIOData::Handle, and the 73 // circular relationship between Profile, ProfileIOData::Handle, and the
84 // ChromeURLRequestContextGetter factories requires Profile be able to call 74 // ChromeURLRequestContextGetter factories requires Profile be able to call
85 // these functions. 75 // these functions.
86 scoped_refptr<ChromeURLRequestContextGetter> CreateMainRequestContextGetter( 76 scoped_refptr<ChromeURLRequestContextGetter> CreateMainRequestContextGetter(
87 content::ProtocolHandlerMap* protocol_handlers, 77 content::ProtocolHandlerMap* protocol_handlers,
88 content::URLRequestInterceptorScopedVector request_interceptors, 78 content::URLRequestInterceptorScopedVector request_interceptors,
89 PrefService* local_state, 79 PrefService* local_state,
90 IOThread* io_thread) const; 80 IOThread* io_thread) const;
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 isolated_media_request_context_getter_map_; 140 isolated_media_request_context_getter_map_;
151 ProfileImplIOData* const io_data_; 141 ProfileImplIOData* const io_data_;
152 142
153 Profile* const profile_; 143 Profile* const profile_;
154 144
155 mutable bool initialized_; 145 mutable bool initialized_;
156 146
157 DISALLOW_COPY_AND_ASSIGN(Handle); 147 DISALLOW_COPY_AND_ASSIGN(Handle);
158 }; 148 };
159 149
160 bool IsDataReductionProxyEnabled() const override;
161
162 private: 150 private:
163 friend class base::RefCountedThreadSafe<ProfileImplIOData>; 151 friend class base::RefCountedThreadSafe<ProfileImplIOData>;
164 152
165 struct LazyParams { 153 struct LazyParams {
166 LazyParams(); 154 LazyParams();
167 ~LazyParams(); 155 ~LazyParams();
168 156
169 // All of these parameters are intended to be read on the IO thread. 157 // All of these parameters are intended to be read on the IO thread.
170 base::FilePath cookie_path; 158 base::FilePath cookie_path;
171 base::FilePath channel_id_path; 159 base::FilePath channel_id_path;
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 228
241 mutable scoped_ptr<net::URLRequestJobFactory> main_job_factory_; 229 mutable scoped_ptr<net::URLRequestJobFactory> main_job_factory_;
242 mutable scoped_ptr<net::URLRequestJobFactory> extensions_job_factory_; 230 mutable scoped_ptr<net::URLRequestJobFactory> extensions_job_factory_;
243 231
244 mutable scoped_ptr<domain_reliability::DomainReliabilityMonitor> 232 mutable scoped_ptr<domain_reliability::DomainReliabilityMonitor>
245 domain_reliability_monitor_; 233 domain_reliability_monitor_;
246 234
247 mutable scoped_ptr<net::SdchManager> sdch_manager_; 235 mutable scoped_ptr<net::SdchManager> sdch_manager_;
248 mutable scoped_ptr<net::SdchOwner> sdch_policy_; 236 mutable scoped_ptr<net::SdchOwner> sdch_policy_;
249 237
250 mutable BooleanPrefMember data_reduction_proxy_enabled_;
251
252 // Parameters needed for isolated apps. 238 // Parameters needed for isolated apps.
253 base::FilePath profile_path_; 239 base::FilePath profile_path_;
254 int app_cache_max_size_; 240 int app_cache_max_size_;
255 int app_media_cache_max_size_; 241 int app_media_cache_max_size_;
256 242
257 DISALLOW_COPY_AND_ASSIGN(ProfileImplIOData); 243 DISALLOW_COPY_AND_ASSIGN(ProfileImplIOData);
258 }; 244 };
259 245
260 #endif // CHROME_BROWSER_PROFILES_PROFILE_IMPL_IO_DATA_H_ 246 #endif // CHROME_BROWSER_PROFILES_PROFILE_IMPL_IO_DATA_H_
OLDNEW
« no previous file with comments | « chrome/browser/profiles/profile_impl.cc ('k') | chrome/browser/profiles/profile_impl_io_data.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698