diff options
author | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-19 19:40:31 +0000 |
---|---|---|
committer | vandebo@chromium.org <vandebo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-03-19 19:40:31 +0000 |
commit | dc895236268d5f20f45c3ed86f1f70f65853cd80 (patch) | |
tree | fa69c05cacb50a7f12e3fce8f23fc974ab43039b /chrome/browser/media_galleries | |
parent | d8911efaf3cd3635a1edcc985c81416bebebd3a7 (diff) | |
download | chromium_src-dc895236268d5f20f45c3ed86f1f70f65853cd80.zip chromium_src-dc895236268d5f20f45c3ed86f1f70f65853cd80.tar.gz chromium_src-dc895236268d5f20f45c3ed86f1f70f65853cd80.tar.bz2 |
Add mechanism to auto mount file systems in response to a URL request.
This code adds a hook for when a file system URL request can not be cracked.
It will allow external media galleries file systems to be lazily created.
BUG=160900
Review URL: https://codereview.chromium.org/195923002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258064 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/media_galleries')
5 files changed, 14 insertions, 0 deletions
diff --git a/chrome/browser/media_galleries/fileapi/iphoto_file_util_unittest.cc b/chrome/browser/media_galleries/fileapi/iphoto_file_util_unittest.cc index d8dbbdf..645beaf 100644 --- a/chrome/browser/media_galleries/fileapi/iphoto_file_util_unittest.cc +++ b/chrome/browser/media_galleries/fileapi/iphoto_file_util_unittest.cc @@ -214,6 +214,7 @@ class IPhotoFileUtilTest : public testing::Test { storage_policy.get(), NULL, additional_providers.Pass(), + std::vector<fileapi::URLRequestAutoMountHandler>(), profile_dir_.path(), content::CreateAllowFileAccessOptions()); } diff --git a/chrome/browser/media_galleries/fileapi/itunes_file_util_unittest.cc b/chrome/browser/media_galleries/fileapi/itunes_file_util_unittest.cc index 7ef4765..43a09be 100644 --- a/chrome/browser/media_galleries/fileapi/itunes_file_util_unittest.cc +++ b/chrome/browser/media_galleries/fileapi/itunes_file_util_unittest.cc @@ -182,6 +182,7 @@ class ItunesFileUtilTest : public testing::Test { storage_policy.get(), NULL, additional_providers.Pass(), + std::vector<fileapi::URLRequestAutoMountHandler>(), profile_dir_.path(), content::CreateAllowFileAccessOptions()); } diff --git a/chrome/browser/media_galleries/fileapi/media_file_system_backend.h b/chrome/browser/media_galleries/fileapi/media_file_system_backend.h index c5f8d99..7dbfbd1 100644 --- a/chrome/browser/media_galleries/fileapi/media_file_system_backend.h +++ b/chrome/browser/media_galleries/fileapi/media_file_system_backend.h @@ -13,6 +13,10 @@ namespace base { class SequencedTaskRunner; } +namespace net { +class URLRequest; +} + class MediaPathFilter; class DeviceMediaAsyncFileUtil; @@ -29,6 +33,12 @@ class MediaFileSystemBackend : public fileapi::FileSystemBackend { static bool CurrentlyOnMediaTaskRunnerThread(); static scoped_refptr<base::SequencedTaskRunner> MediaTaskRunner(); + static bool AttemptAutoMountForURLRequest( + const net::URLRequest* url_request, + const fileapi::FileSystemURL& filesystem_url, + const std::string& storage_domain, + const base::Callback<void(base::File::Error result)>& callback); + // FileSystemBackend implementation. virtual bool CanHandleType(fileapi::FileSystemType type) const OVERRIDE; virtual void Initialize(fileapi::FileSystemContext* context) OVERRIDE; diff --git a/chrome/browser/media_galleries/fileapi/native_media_file_util_unittest.cc b/chrome/browser/media_galleries/fileapi/native_media_file_util_unittest.cc index 93a47c3..0b20d58 100644 --- a/chrome/browser/media_galleries/fileapi/native_media_file_util_unittest.cc +++ b/chrome/browser/media_galleries/fileapi/native_media_file_util_unittest.cc @@ -133,6 +133,7 @@ class NativeMediaFileUtilTest : public testing::Test { storage_policy.get(), NULL, additional_providers.Pass(), + std::vector<fileapi::URLRequestAutoMountHandler>(), data_dir_.path(), content::CreateAllowFileAccessOptions()); diff --git a/chrome/browser/media_galleries/fileapi/picasa_file_util_unittest.cc b/chrome/browser/media_galleries/fileapi/picasa_file_util_unittest.cc index 3255ad1..c70c2ca 100644 --- a/chrome/browser/media_galleries/fileapi/picasa_file_util_unittest.cc +++ b/chrome/browser/media_galleries/fileapi/picasa_file_util_unittest.cc @@ -250,6 +250,7 @@ class PicasaFileUtilTest : public testing::Test { storage_policy.get(), NULL, additional_providers.Pass(), + std::vector<fileapi::URLRequestAutoMountHandler>(), profile_dir_.path(), content::CreateAllowFileAccessOptions()); } |