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

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

Issue 12546016: Remove the Extensions URLRequestContext (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: android webview init fix merged in. Created 7 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
« no previous file with comments | « chrome/browser/profiles/profile_impl_io_data.h ('k') | chrome/browser/profiles/profile_io_data.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/profiles/profile_impl_io_data.cc
diff --git a/chrome/browser/profiles/profile_impl_io_data.cc b/chrome/browser/profiles/profile_impl_io_data.cc
index 4026f4baed35e5d79f894c6b64c9a49820ee5bde..7ee0770551b5e794c9d956119e52d7d40d29859f 100644
--- a/chrome/browser/profiles/profile_impl_io_data.cc
+++ b/chrome/browser/profiles/profile_impl_io_data.cc
@@ -22,6 +22,7 @@
#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/cookie_store_util.h"
#include "chrome/browser/net/http_server_properties_manager.h"
#include "chrome/browser/net/predictor.h"
#include "chrome/browser/net/sqlite_server_bound_cert_store.h"
@@ -96,33 +97,27 @@ ProfileImplIOData::Handle::~Handle() {
}
void ProfileImplIOData::Handle::Init(
- const base::FilePath& cookie_path,
const base::FilePath& server_bound_cert_path,
const base::FilePath& cache_path,
int cache_max_size,
const base::FilePath& media_cache_path,
int media_cache_max_size,
- const base::FilePath& extensions_cookie_path,
const base::FilePath& profile_path,
const base::FilePath& infinite_cache_path,
chrome_browser_net::Predictor* predictor,
- bool restore_old_session_cookies,
quota::SpecialStoragePolicy* special_storage_policy) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
DCHECK(!io_data_->lazy_params_);
DCHECK(predictor);
- LazyParams* lazy_params = new LazyParams;
+ LazyParams* lazy_params = new LazyParams();
- lazy_params->cookie_path = cookie_path;
lazy_params->server_bound_cert_path = server_bound_cert_path;
lazy_params->cache_path = cache_path;
lazy_params->cache_max_size = cache_max_size;
lazy_params->media_cache_path = media_cache_path;
lazy_params->media_cache_max_size = media_cache_max_size;
- lazy_params->extensions_cookie_path = extensions_cookie_path;
lazy_params->infinite_cache_path = infinite_cache_path;
- lazy_params->restore_old_session_cookies = restore_old_session_cookies;
lazy_params->special_storage_policy = special_storage_policy;
io_data_->lazy_params_.reset(lazy_params);
@@ -191,18 +186,6 @@ ProfileImplIOData::Handle::GetMediaRequestContextGetter() const {
}
scoped_refptr<ChromeURLRequestContextGetter>
-ProfileImplIOData::Handle::GetExtensionsRequestContextGetter() const {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- LazyInitialize();
- if (!extensions_request_context_getter_.get()) {
- extensions_request_context_getter_ =
- ChromeURLRequestContextGetter::CreateOriginalForExtensions(profile_,
- io_data_);
- }
- return extensions_request_context_getter_;
-}
-
-scoped_refptr<ChromeURLRequestContextGetter>
ProfileImplIOData::Handle::CreateIsolatedAppRequestContextGetter(
const base::FilePath& partition_path,
bool in_memory,
@@ -308,8 +291,7 @@ void ProfileImplIOData::Handle::LazyInitialize() const {
ProfileImplIOData::LazyParams::LazyParams()
: cache_max_size(0),
- media_cache_max_size(0),
- restore_old_session_cookies(false) {}
+ media_cache_max_size(0) {}
ProfileImplIOData::LazyParams::~LazyParams() {}
@@ -330,13 +312,6 @@ void ProfileImplIOData::InitializeInternal(
IOThread* const io_thread = profile_params->io_thread;
IOThread::Globals* const io_thread_globals = io_thread->globals();
- const CommandLine& command_line = *CommandLine::ForCurrentProcess();
- // Only allow Record Mode if we are in a Debug build or where we are running
- // a cycle, and the user has limited control.
- bool record_mode = command_line.HasSwitch(switches::kRecordMode) &&
- (chrome::kRecordModeEnabled ||
- command_line.HasSwitch(switches::kVisitURLs));
- bool playback_mode = command_line.HasSwitch(switches::kPlaybackMode);
network_delegate()->set_predictor(predictor_.get());
@@ -368,32 +343,14 @@ void ProfileImplIOData::InitializeInternal(
main_context->set_proxy_service(proxy_service());
- scoped_refptr<net::CookieStore> cookie_store = NULL;
net::ServerBoundCertService* server_bound_cert_service = NULL;
- if (record_mode || playback_mode) {
- // Don't use existing cookies and use an in-memory store.
- cookie_store = new net::CookieMonster(
- NULL, profile_params->cookie_monster_delegate.get());
+ if (chrome_browser_net::ShouldUseInMemoryCookiesAndCache()) {
// Don't use existing server-bound certs and use an in-memory store.
server_bound_cert_service = new net::ServerBoundCertService(
new net::DefaultServerBoundCertStore(NULL),
base::WorkerPool::GetTaskRunner(true));
}
- // setup cookie store
- if (!cookie_store.get()) {
- DCHECK(!lazy_params_->cookie_path.empty());
-
- cookie_store = content::CreatePersistentCookieStore(
- lazy_params_->cookie_path,
- lazy_params_->restore_old_session_cookies,
- lazy_params_->special_storage_policy.get(),
- profile_params->cookie_monster_delegate.get());
- cookie_store->GetCookieMonster()->SetPersistSessionCookies(true);
- }
-
- main_context->set_cookie_store(cookie_store.get());
-
// Setup server bound cert service.
if (!server_bound_cert_service) {
DCHECK(!lazy_params_->server_bound_cert_path.empty());
@@ -428,9 +385,10 @@ void ProfileImplIOData::InitializeInternal(
ChromeDataReductionProxyAndroid::Init(main_cache->GetSession());
#endif
- if (record_mode || playback_mode) {
+ if (chrome_browser_net::ShouldUseInMemoryCookiesAndCache()) {
main_cache->set_mode(
- record_mode ? net::HttpCache::RECORD : net::HttpCache::PLAYBACK);
+ chrome_browser_net::IsCookieRecordMode() ?
+ net::HttpCache::RECORD : net::HttpCache::PLAYBACK);
}
main_http_factory_.reset(main_cache);
@@ -451,10 +409,6 @@ void ProfileImplIOData::InitializeInternal(
ftp_factory_.get());
main_context->set_job_factory(main_job_factory_.get());
-#if defined(ENABLE_EXTENSIONS)
- InitializeExtensionsRequestContext(profile_params);
-#endif
-
// Create a media request context based on the main context, but using a
// media cache. It shares the same job factory as the main context.
StoragePartitionDescriptor details(profile_path_, false);
@@ -464,48 +418,6 @@ void ProfileImplIOData::InitializeInternal(
lazy_params_.reset();
}
-void ProfileImplIOData::
- InitializeExtensionsRequestContext(ProfileParams* profile_params) const {
- ChromeURLRequestContext* extensions_context = extensions_request_context();
- IOThread* const io_thread = profile_params->io_thread;
- IOThread::Globals* const io_thread_globals = io_thread->globals();
- ApplyProfileParamsToContext(extensions_context);
-
- extensions_context->set_transport_security_state(transport_security_state());
-
- extensions_context->set_net_log(io_thread->net_log());
-
- extensions_context->set_throttler_manager(
- io_thread_globals->throttler_manager.get());
-
- net::CookieStore* extensions_cookie_store =
- content::CreatePersistentCookieStore(
- lazy_params_->extensions_cookie_path,
- lazy_params_->restore_old_session_cookies,
- NULL,
- NULL);
- // Enable cookies for devtools and extension URLs.
- const char* schemes[] = {chrome::kChromeDevToolsScheme,
- extensions::kExtensionScheme};
- extensions_cookie_store->GetCookieMonster()->SetCookieableSchemes(schemes, 2);
- extensions_context->set_cookie_store(extensions_cookie_store);
-
- scoped_ptr<net::URLRequestJobFactoryImpl> extensions_job_factory(
- new net::URLRequestJobFactoryImpl());
- // TODO(shalev): The extensions_job_factory has a NULL NetworkDelegate.
- // Without a network_delegate, this protocol handler will never
- // handle file: requests, but as a side effect it makes
- // job_factory::IsHandledProtocol return true, which prevents attempts to
- // handle the protocol externally. We pass NULL in to
- // SetUpJobFactory() to get this effect.
- extensions_job_factory_ = SetUpJobFactoryDefaults(
- extensions_job_factory.Pass(),
- scoped_ptr<ProtocolHandlerRegistry::JobInterceptorFactory>(),
- NULL,
- ftp_factory_.get());
- extensions_context->set_job_factory(extensions_job_factory_.get());
-}
-
ChromeURLRequestContext*
ProfileImplIOData::InitializeAppRequestContext(
ChromeURLRequestContext* main_context,
@@ -517,19 +429,9 @@ ProfileImplIOData::InitializeAppRequestContext(
AppRequestContext* context = new AppRequestContext(load_time_stats());
context->CopyFrom(main_context);
- base::FilePath cookie_path = partition_descriptor.path.Append(
- chrome::kCookieFilename);
base::FilePath cache_path =
partition_descriptor.path.Append(chrome::kCacheDirname);
- const CommandLine& command_line = *CommandLine::ForCurrentProcess();
- // Only allow Record Mode if we are in a Debug build or where we are running
- // a cycle, and the user has limited control.
- bool record_mode = command_line.HasSwitch(switches::kRecordMode) &&
- (chrome::kRecordModeEnabled ||
- command_line.HasSwitch(switches::kVisitURLs));
- bool playback_mode = command_line.HasSwitch(switches::kPlaybackMode);
-
// Use a separate HTTP disk cache for isolated apps.
net::HttpCache::BackendFactory* app_backend = NULL;
if (partition_descriptor.in_memory) {
@@ -548,35 +450,12 @@ ProfileImplIOData::InitializeAppRequestContext(
net::HttpCache* app_http_cache =
new net::HttpCache(main_network_session, app_backend);
- scoped_refptr<net::CookieStore> cookie_store = NULL;
- if (partition_descriptor.in_memory) {
- cookie_store = new net::CookieMonster(NULL, NULL);
- } else if (record_mode || playback_mode) {
- // Don't use existing cookies and use an in-memory store.
- // TODO(creis): We should have a cookie delegate for notifying the cookie
- // extensions API, but we need to update it to understand isolated apps
- // first.
- cookie_store = new net::CookieMonster(NULL, NULL);
+ if (chrome_browser_net::ShouldUseInMemoryCookiesAndCache()) {
app_http_cache->set_mode(
- record_mode ? net::HttpCache::RECORD : net::HttpCache::PLAYBACK);
- }
-
- // Use an app-specific cookie store.
- if (!cookie_store.get()) {
- DCHECK(!cookie_path.empty());
-
- // TODO(creis): We should have a cookie delegate for notifying the cookie
- // extensions API, but we need to update it to understand isolated apps
- // first.
- cookie_store = content::CreatePersistentCookieStore(
- cookie_path,
- false,
- NULL,
- NULL);
+ chrome_browser_net::IsCookieRecordMode() ?
+ net::HttpCache::RECORD : net::HttpCache::PLAYBACK);
}
- // Transfer ownership of the cookies and cache to AppRequestContext.
- context->SetCookieStore(cookie_store.get());
context->SetHttpTransactionFactory(
scoped_ptr<net::HttpTransactionFactory>(app_http_cache));
« no previous file with comments | « chrome/browser/profiles/profile_impl_io_data.h ('k') | chrome/browser/profiles/profile_io_data.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698