diff options
author | ajwong@chromium.org <ajwong@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-21 02:31:18 +0000 |
---|---|---|
committer | ajwong@chromium.org <ajwong@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-09-21 02:31:18 +0000 |
commit | e79b1d5a6edc56613e099fcd8fb75a05f501fc71 (patch) | |
tree | a118f4edf3f2aee250af4e71ee8493bcde5629ab /chrome/browser/extensions/extension_fileapi_apitest.cc | |
parent | 8643f2d60717c84be350040d553ea04dda4d6f21 (diff) | |
download | chromium_src-e79b1d5a6edc56613e099fcd8fb75a05f501fc71.zip chromium_src-e79b1d5a6edc56613e099fcd8fb75a05f501fc71.tar.gz chromium_src-e79b1d5a6edc56613e099fcd8fb75a05f501fc71.tar.bz2 |
Create a new URLRequestJobFactory for isolated request contexts.
Also includes unittest from tzik@:
http://codereview.chromium.org/10956009/
Originally the isolated URLRequestContexts used the same URLRequestJobFactory instance as the "default" request context. This breaks filesystem: because the isolated context would incorrectly dispatch to FileSystemContext of the default URLRequestContext.
This CL makes it so the isolated contexts do not share the same URLRequestJobFactory. There is now one URLRequestJobFactory per StoragePartition (the code equiv of one isolated context). Note that each RequestContext and MediaRequestContext pair still share the same URLRequestJobFactory. This is safe because they are in the isolation domain.
High level changes are:
- Each URLRequestJobFactory needs its own protocol_handler_interceptor
which requires threading the parameter through all the
URLRequestContext factory mess because this particular
object must be created on the UI thread.
- GetIsolatedMediaRequestContext no longer looks up the
app context out of the profile. Instead
GetIsolatedMediaRequestContextGetter() does this. This
makes it a little clearer that it is really a thin facade
over the related isolated context.
- The common code for URLJobFactory creation is pulled
up into SetUpJobFactoryDefaults out of both
off_the_record and the normal profile_impl. This will
avoid future divergence of the setup.
- FtpProtocolHandler also moved into SetUpJobFactoryDefaults.
Again, this is just to avoid future divergence.
- Lots of ownership passing moved to scoped_ptr<> to
be more explicit. No functionality change here, but lots
of text churn.
TBR=finnur
BUG=150861
Review URL: https://codereview.chromium.org/10969017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157900 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_fileapi_apitest.cc')
-rw-r--r-- | chrome/browser/extensions/extension_fileapi_apitest.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/chrome/browser/extensions/extension_fileapi_apitest.cc b/chrome/browser/extensions/extension_fileapi_apitest.cc index 43c77f6..6151e04 100644 --- a/chrome/browser/extensions/extension_fileapi_apitest.cc +++ b/chrome/browser/extensions/extension_fileapi_apitest.cc @@ -7,3 +7,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, DISABLED_FileAPI) { ASSERT_TRUE(RunExtensionTest("fileapi")) << message_; } + +IN_PROC_BROWSER_TEST_F(ExtensionApiTest, XHROnPersistentFileSystem) { + ASSERT_TRUE(RunPlatformAppTest("xhr_persistent_fs")) << message_; +} |