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

Unified Diff: chrome/browser/profiles/profile_impl_io_data.cc

Issue 7467012: Modifying prefetch to account for multi-profile. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/profiles/profile_impl_io_data.cc
===================================================================
--- chrome/browser/profiles/profile_impl_io_data.cc (revision 96009)
+++ chrome/browser/profiles/profile_impl_io_data.cc (working copy)
@@ -12,6 +12,8 @@
#include "chrome/browser/io_thread.h"
#include "chrome/browser/net/chrome_net_log.h"
#include "chrome/browser/net/chrome_network_delegate.h"
+#include "chrome/browser/net/connect_interceptor.h"
+#include "chrome/browser/net/predictor.h"
#include "chrome/browser/net/sqlite_persistent_cookie_store.h"
#include "chrome/browser/prefs/pref_member.h"
#include "chrome/browser/profiles/profile.h"
@@ -23,6 +25,7 @@
#include "content/browser/resource_context.h"
#include "net/ftp/ftp_network_layer.h"
#include "net/http/http_cache.h"
+#include "net/url_request/url_request_job_factory.h"
ProfileImplIOData::Handle::Handle(Profile* profile)
: io_data_(new ProfileImplIOData),
@@ -52,13 +55,15 @@
io_data_->ShutdownOnUIThread();
}
-void ProfileImplIOData::Handle::Init(const FilePath& cookie_path,
- const FilePath& cache_path,
- int cache_max_size,
- const FilePath& media_cache_path,
- int media_cache_max_size,
- const FilePath& extensions_cookie_path,
- const FilePath& app_path) {
+void ProfileImplIOData::Handle::Init(
+ const FilePath& cookie_path,
+ const FilePath& cache_path,
+ int cache_max_size,
+ const FilePath& media_cache_path,
+ int media_cache_max_size,
+ const FilePath& extensions_cookie_path,
+ const FilePath& app_path,
+ chrome_browser_net::Predictor* predictor) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
DCHECK(!io_data_->lazy_params_.get());
LazyParams* lazy_params = new LazyParams;
@@ -74,6 +79,9 @@
// Keep track of isolated app path separately so we can use it on demand.
io_data_->app_path_ = app_path;
+
+ io_data_->predictor_.reset(predictor);
+ io_data_->predictor_->InitNetworkPredictor(profile_->GetPrefs());
}
base::Callback<ChromeURLDataManagerBackend*(void)>
@@ -151,6 +159,11 @@
return context;
}
+chrome_browser_net::Predictor*
+ProfileImplIOData::Handle::GetNetworkPredictor() {
+ return io_data_->GetNetworkPredictor();
+}
+
void ProfileImplIOData::Handle::LazyInitialize() const {
if (!initialized_) {
io_data_->InitializeProfileParams(profile_);
@@ -307,6 +320,9 @@
media_request_context_->set_job_factory(job_factory());
extensions_context->set_job_factory(job_factory());
+ job_factory()->AddInterceptor(
+ new chrome_browser_net::ConnectInterceptor(predictor_.get()));
+
lazy_params_.reset();
}
@@ -388,3 +404,7 @@
DCHECK(app_request_context);
return app_request_context;
}
+
+chrome_browser_net::Predictor* ProfileImplIOData::GetNetworkPredictor() {
+ return predictor_.get();
+}

Powered by Google App Engine
This is Rietveld 408576698