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

Unified Diff: chrome/browser/chromeos/fileapi/file_system_backend.cc

Issue 2568033002: mediaview: Skeleton for ARC Documents Provider FS. (Closed)
Patch Set: IWYU and comments. Created 4 years 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/chromeos/fileapi/file_system_backend.cc
diff --git a/chrome/browser/chromeos/fileapi/file_system_backend.cc b/chrome/browser/chromeos/fileapi/file_system_backend.cc
index d81fc877bb4719a617840d4475509519b3ef8ef6..9992f284d652bc2040afdbfd20f34c188142c04f 100644
--- a/chrome/browser/chromeos/fileapi/file_system_backend.cc
+++ b/chrome/browser/chromeos/fileapi/file_system_backend.cc
@@ -49,7 +49,8 @@ bool FileSystemBackend::CanHandleURL(const storage::FileSystemURL& url) {
url.type() == storage::kFileSystemTypeDrive ||
url.type() == storage::kFileSystemTypeProvided ||
url.type() == storage::kFileSystemTypeDeviceMediaAsFileStorage ||
- url.type() == storage::kFileSystemTypeArcContent;
+ url.type() == storage::kFileSystemTypeArcContent ||
+ url.type() == storage::kFileSystemTypeArcDocumentsProvider;
}
FileSystemBackend::FileSystemBackend(
@@ -57,6 +58,7 @@ FileSystemBackend::FileSystemBackend(
std::unique_ptr<FileSystemBackendDelegate> file_system_provider_delegate,
std::unique_ptr<FileSystemBackendDelegate> mtp_delegate,
std::unique_ptr<FileSystemBackendDelegate> arc_content_delegate,
+ std::unique_ptr<FileSystemBackendDelegate> arc_documents_provider_delegate,
scoped_refptr<storage::ExternalMountPoints> mount_points,
storage::ExternalMountPoints* system_mount_points)
: file_access_permissions_(new FileAccessPermissions()),
@@ -65,6 +67,8 @@ FileSystemBackend::FileSystemBackend(
file_system_provider_delegate_(std::move(file_system_provider_delegate)),
mtp_delegate_(std::move(mtp_delegate)),
arc_content_delegate_(std::move(arc_content_delegate)),
+ arc_documents_provider_delegate_(
+ std::move(arc_documents_provider_delegate)),
mount_points_(mount_points),
system_mount_points_(system_mount_points) {}
@@ -101,6 +105,7 @@ bool FileSystemBackend::CanHandleType(storage::FileSystemType type) const {
case storage::kFileSystemTypeDeviceMediaAsFileStorage:
case storage::kFileSystemTypeProvided:
case storage::kFileSystemTypeArcContent:
+ case storage::kFileSystemTypeArcDocumentsProvider:
return true;
default:
return false;
@@ -253,6 +258,8 @@ storage::AsyncFileUtil* FileSystemBackend::GetAsyncFileUtil(
return mtp_delegate_->GetAsyncFileUtil(type);
case storage::kFileSystemTypeArcContent:
return arc_content_delegate_->GetAsyncFileUtil(type);
+ case storage::kFileSystemTypeArcDocumentsProvider:
+ return arc_documents_provider_delegate_->GetAsyncFileUtil(type);
default:
NOTREACHED();
}
@@ -306,7 +313,8 @@ storage::FileSystemOperation* FileSystemBackend::CreateFileSystemOperation(
url.type() == storage::kFileSystemTypeRestrictedNativeLocal ||
url.type() == storage::kFileSystemTypeDrive ||
url.type() == storage::kFileSystemTypeProvided ||
- url.type() == storage::kFileSystemTypeArcContent);
+ url.type() == storage::kFileSystemTypeArcContent ||
+ url.type() == storage::kFileSystemTypeArcDocumentsProvider);
return storage::FileSystemOperation::Create(
url, context,
base::MakeUnique<storage::FileSystemOperationContext>(context));
@@ -317,7 +325,8 @@ bool FileSystemBackend::SupportsStreaming(
return url.type() == storage::kFileSystemTypeDrive ||
url.type() == storage::kFileSystemTypeProvided ||
url.type() == storage::kFileSystemTypeDeviceMediaAsFileStorage ||
- url.type() == storage::kFileSystemTypeArcContent;
+ url.type() == storage::kFileSystemTypeArcContent ||
+ url.type() == storage::kFileSystemTypeArcDocumentsProvider;
}
bool FileSystemBackend::HasInplaceCopyImplementation(
@@ -330,6 +339,7 @@ bool FileSystemBackend::HasInplaceCopyImplementation(
case storage::kFileSystemTypeNativeLocal:
case storage::kFileSystemTypeRestrictedNativeLocal:
case storage::kFileSystemTypeArcContent:
+ case storage::kFileSystemTypeArcDocumentsProvider:
return false;
default:
NOTREACHED();
@@ -367,6 +377,9 @@ FileSystemBackend::CreateFileStreamReader(
case storage::kFileSystemTypeArcContent:
return arc_content_delegate_->CreateFileStreamReader(
url, offset, max_bytes_to_read, expected_modification_time, context);
+ case storage::kFileSystemTypeArcDocumentsProvider:
+ return arc_documents_provider_delegate_->CreateFileStreamReader(
+ url, offset, max_bytes_to_read, expected_modification_time, context);
default:
NOTREACHED();
}
@@ -399,6 +412,7 @@ FileSystemBackend::CreateFileStreamWriter(
// Read only file systems.
case storage::kFileSystemTypeRestrictedNativeLocal:
case storage::kFileSystemTypeArcContent:
+ case storage::kFileSystemTypeArcDocumentsProvider:
return std::unique_ptr<storage::FileStreamWriter>();
default:
NOTREACHED();
@@ -434,6 +448,7 @@ void FileSystemBackend::GetRedirectURLForContents(
case storage::kFileSystemTypeNativeLocal:
case storage::kFileSystemTypeRestrictedNativeLocal:
case storage::kFileSystemTypeArcContent:
+ case storage::kFileSystemTypeArcDocumentsProvider:
callback.Run(GURL());
return;
default:
« no previous file with comments | « chrome/browser/chromeos/fileapi/file_system_backend.h ('k') | chrome/browser/chromeos/fileapi/file_system_backend_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698