Chromium Code Reviews| Index: chrome/browser/profiles/profile_impl.cc |
| =================================================================== |
| --- chrome/browser/profiles/profile_impl.cc (revision 97084) |
| +++ chrome/browser/profiles/profile_impl.cc (working copy) |
| @@ -47,6 +47,7 @@ |
| #include "chrome/browser/net/chrome_url_request_context.h" |
| #include "chrome/browser/net/gaia/token_service.h" |
| #include "chrome/browser/net/net_pref_observer.h" |
| +#include "chrome/browser/net/predictor.h" |
| #include "chrome/browser/net/pref_proxy_config_service.h" |
| #include "chrome/browser/net/ssl_config_service_manager.h" |
| #include "chrome/browser/password_manager/password_store_default.h" |
| @@ -306,7 +307,8 @@ |
| #if defined(OS_WIN) |
| checked_instant_promo_(false), |
| #endif |
| - delegate_(delegate) { |
| + delegate_(delegate), |
| + predictor_(NULL) { |
| DCHECK(!path.empty()) << "Using an empty path will attempt to write " << |
| "profile files to the root directory!"; |
| @@ -314,6 +316,12 @@ |
| TimeDelta::FromMilliseconds(kCreateSessionServiceDelayMS), this, |
| &ProfileImpl::EnsureSessionServiceCreated); |
| + // Determine if prefetch is enabled for this profile. |
| + const CommandLine* command_line = CommandLine::ForCurrentProcess(); |
| + predictor_ = chrome_browser_net::Predictor::CreatePredictor( |
| + !command_line->HasSwitch(switches::kDisablePreconnect), |
| + g_browser_process->profile_manager() == NULL); |
|
Miranda Callahan
2011/08/17 08:45:56
nit: can you add a comment here like "If no Profil
rpetterson
2011/08/17 16:28:25
Done.
|
| + |
| if (delegate_) { |
| prefs_.reset(PrefService::CreatePrefService( |
| GetPrefFilePath(), |
| @@ -434,9 +442,12 @@ |
| // Make sure we initialize the ProfileIOData after everything else has been |
| // initialized that we might be reading from the IO thread. |
| + |
| io_data_.Init(cookie_path, origin_bound_cert_path, cache_path, |
| cache_max_size, media_cache_path, media_cache_max_size, |
| - extensions_cookie_path, app_path); |
| + extensions_cookie_path, app_path, predictor_, |
| + g_browser_process->local_state(), |
| + g_browser_process->io_thread()); |
| // Creation has been finished. |
| if (delegate_) |
| @@ -895,7 +906,7 @@ |
| DCHECK(!net_pref_observer_.get()); |
| net_pref_observer_.reset( |
| - new NetPrefObserver(prefs_.get(), GetPrerenderManager())); |
| + new NetPrefObserver(prefs_.get(), GetPrerenderManager(), predictor_)); |
| DoFinalInit(); |
| } |
| @@ -1718,6 +1729,10 @@ |
| return prerender_manager_.get(); |
| } |
| +chrome_browser_net::Predictor* ProfileImpl::GetNetworkPredictor() { |
| + return predictor_; |
| +} |
| + |
| SpellCheckProfile* ProfileImpl::GetSpellCheckProfile() { |
| if (!spellcheck_profile_.get()) |
| spellcheck_profile_.reset(new SpellCheckProfile()); |