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

Unified Diff: chrome/browser/chromeos/extensions/file_manager/fileapi_util.cc

Issue 23945002: file_manager: Move non-binding code to c/b/chromeos/file_manager (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 3 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/chromeos/extensions/file_manager/fileapi_util.cc
diff --git a/chrome/browser/chromeos/extensions/file_manager/fileapi_util.cc b/chrome/browser/chromeos/extensions/file_manager/fileapi_util.cc
deleted file mode 100644
index fdabc2da46c4a59a14fa8902df8c1503c3be1c85..0000000000000000000000000000000000000000
--- a/chrome/browser/chromeos/extensions/file_manager/fileapi_util.cc
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/chromeos/extensions/file_manager/fileapi_util.h"
-
-#include "base/files/file_path.h"
-#include "chrome/browser/extensions/extension_service.h"
-#include "chrome/browser/extensions/extension_system.h"
-#include "chrome/browser/profiles/profile.h"
-#include "content/public/browser/browser_thread.h"
-#include "content/public/browser/render_view_host.h"
-#include "content/public/browser/site_instance.h"
-#include "content/public/browser/storage_partition.h"
-#include "net/base/escape.h"
-#include "url/gurl.h"
-#include "webkit/browser/fileapi/file_system_context.h"
-#include "webkit/common/fileapi/file_system_util.h"
-
-namespace file_manager {
-namespace util {
-
-fileapi::FileSystemContext* GetFileSystemContextForExtensionId(
- Profile* profile,
- const std::string& extension_id) {
- GURL site = extensions::ExtensionSystem::Get(profile)->
- extension_service()->GetSiteForExtensionId(extension_id);
- return content::BrowserContext::GetStoragePartitionForSite(profile, site)->
- GetFileSystemContext();
-}
-
-fileapi::FileSystemContext* GetFileSystemContextForRenderViewHost(
- Profile* profile,
- content::RenderViewHost* render_view_host) {
- content::SiteInstance* site_instance = render_view_host->GetSiteInstance();
- return content::BrowserContext::GetStoragePartition(profile, site_instance)->
- GetFileSystemContext();
-}
-
-GURL ConvertRelativeFilePathToFileSystemUrl(const base::FilePath& relative_path,
- const std::string& extension_id) {
- GURL base_url = fileapi::GetFileSystemRootURI(
- extensions::Extension::GetBaseURLFromExtensionId(extension_id),
- fileapi::kFileSystemTypeExternal);
- return GURL(base_url.spec() +
- net::EscapeUrlEncodedData(relative_path.AsUTF8Unsafe(),
- false)); // Space to %20 instead of +.
-}
-
-bool ConvertAbsoluteFilePathToFileSystemUrl(
- Profile* profile,
- const base::FilePath& absolute_path,
- const std::string& extension_id,
- GURL* url) {
- base::FilePath relative_path;
- if (!ConvertAbsoluteFilePathToRelativeFileSystemPath(
- profile,
- extension_id,
- absolute_path,
- &relative_path)) {
- return false;
- }
- *url = ConvertRelativeFilePathToFileSystemUrl(relative_path, extension_id);
- return true;
-}
-
-bool ConvertAbsoluteFilePathToRelativeFileSystemPath(
- Profile* profile,
- const std::string& extension_id,
- const base::FilePath& absolute_path,
- base::FilePath* virtual_path) {
- ExtensionService* service =
- extensions::ExtensionSystem::Get(profile)->extension_service();
- // May be NULL during unit_tests.
- if (!service)
- return false;
-
- // File browser APIs are meant to be used only from extension context, so the
- // extension's site is the one in whose file system context the virtual path
- // should be found.
- GURL site = service->GetSiteForExtensionId(extension_id);
- fileapi::ExternalFileSystemBackend* backend =
- content::BrowserContext::GetStoragePartitionForSite(profile, site)->
- GetFileSystemContext()->external_backend();
- if (!backend)
- return false;
-
- // Find if this file path is managed by the external backend.
- if (!backend->GetVirtualPath(absolute_path, virtual_path))
- return false;
-
- return true;
-}
-
-} // namespace util
-} // namespace file_manager

Powered by Google App Engine
This is Rietveld 408576698