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

Unified Diff: webkit/fileapi/obfuscated_file_util.h

Issue 7470037: [Refactor] to rename and re-layer the file_util stack layers. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Rebased on the svn tree. Created 9 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
« no previous file with comments | « webkit/fileapi/obfuscated_file_system_file_util_unittest.cc ('k') | webkit/fileapi/obfuscated_file_util.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/fileapi/obfuscated_file_util.h
diff --git a/webkit/fileapi/obfuscated_file_system_file_util.h b/webkit/fileapi/obfuscated_file_util.h
similarity index 92%
rename from webkit/fileapi/obfuscated_file_system_file_util.h
rename to webkit/fileapi/obfuscated_file_util.h
index 782fc07f7abc09cb200595672260f12317ec6fae..c814b53d861e58e6c230f1d59fc3c12a6058c5cf 100644
--- a/webkit/fileapi/obfuscated_file_system_file_util.h
+++ b/webkit/fileapi/obfuscated_file_util.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef WEBKIT_FILEAPI_OBFUSCATED_FILE_SYSTEM_FILE_UTIL_H_
-#define WEBKIT_FILEAPI_OBFUSCATED_FILE_SYSTEM_FILE_UTIL_H_
+#ifndef WEBKIT_FILEAPI_OBFUSCATED_FILE_UTIL_H_
+#define WEBKIT_FILEAPI_OBFUSCATED_FILE_UTIL_H_
#include <map>
#include <string>
@@ -45,17 +45,29 @@ class FileSystemOperationContext;
//
// TODO(ericu): We don't ever update directory mtimes; which operations should
// do that?
-class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
- public base::RefCountedThreadSafe<ObfuscatedFileSystemFileUtil> {
+class ObfuscatedFileUtil : public FileSystemFileUtil,
+ public base::RefCountedThreadSafe<ObfuscatedFileUtil> {
public:
+ // Origin enumerator interface.
+ // An instance of this interface is assumed to be called on the file thread.
+ class AbstractOriginEnumerator {
+ public:
+ virtual ~AbstractOriginEnumerator() {}
+
+ // Returns the next origin. Returns empty if there are no more origins.
+ virtual GURL Next() = 0;
+
+ // Returns the current origin's information.
+ virtual bool HasFileSystemType(FileSystemType type) const = 0;
+ };
+
// |underlying_file_util| is owned by the instance. It will be deleted by
// the owner instance. For example, it can be instanciated as follows:
- // FileSystemFileUtil* file_system_file_util =
- // new ObfuscatedFileSystemFileUtil(new FileSystemFileUtil());
- ObfuscatedFileSystemFileUtil(
- const FilePath& file_system_directory,
- FileSystemFileUtil* underlying_file_util);
- virtual ~ObfuscatedFileSystemFileUtil();
+ // FileSystemFileUtil* file_util =
+ // new ObfuscatedFileUtil(new NativeFileUtil());
+ ObfuscatedFileUtil(const FilePath& file_system_directory,
+ FileSystemFileUtil* underlying_file_util);
+ virtual ~ObfuscatedFileUtil();
virtual base::PlatformFileError CreateOrOpen(
FileSystemOperationContext* context,
@@ -68,10 +80,11 @@ class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
FileSystemOperationContext* context,
const FilePath& file_path, bool* created) OVERRIDE;
- virtual base::PlatformFileError GetLocalFilePath(
+ virtual base::PlatformFileError CreateDirectory(
FileSystemOperationContext* context,
- const FilePath& virtual_file,
- FilePath* local_path) OVERRIDE;
+ const FilePath& file_path,
+ bool exclusive,
+ bool recursive) OVERRIDE;
virtual base::PlatformFileError GetFileInfo(
FileSystemOperationContext* context,
@@ -84,30 +97,14 @@ class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
const FilePath& file_path,
std::vector<base::FileUtilProxy::Entry>* entries) OVERRIDE;
- virtual base::PlatformFileError CreateDirectory(
- FileSystemOperationContext* context,
- const FilePath& file_path,
- bool exclusive,
- bool recursive) OVERRIDE;
-
- virtual base::PlatformFileError CopyOrMoveFile(
- FileSystemOperationContext* context,
- const FilePath& src_file_path,
- const FilePath& dest_file_path,
- bool copy) OVERRIDE;
-
- virtual PlatformFileError CopyInForeignFile(
- FileSystemOperationContext* context,
- const FilePath& src_file_path,
- const FilePath& dest_file_path) OVERRIDE;
-
- virtual base::PlatformFileError DeleteFile(
+ virtual AbstractFileEnumerator* CreateFileEnumerator(
FileSystemOperationContext* context,
- const FilePath& file_path) OVERRIDE;
+ const FilePath& root_path) OVERRIDE;
- virtual base::PlatformFileError DeleteSingleDirectory(
+ virtual base::PlatformFileError GetLocalFilePath(
FileSystemOperationContext* context,
- const FilePath& file_path) OVERRIDE;
+ const FilePath& virtual_file,
+ FilePath* local_path) OVERRIDE;
virtual base::PlatformFileError Touch(
FileSystemOperationContext* context,
@@ -132,6 +129,25 @@ class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
FileSystemOperationContext* context,
const FilePath& file_path) OVERRIDE;
+ virtual base::PlatformFileError CopyOrMoveFile(
+ FileSystemOperationContext* context,
+ const FilePath& src_file_path,
+ const FilePath& dest_file_path,
+ bool copy) OVERRIDE;
+
+ virtual PlatformFileError CopyInForeignFile(
+ FileSystemOperationContext* context,
+ const FilePath& src_file_path,
+ const FilePath& dest_file_path) OVERRIDE;
+
+ virtual base::PlatformFileError DeleteFile(
+ FileSystemOperationContext* context,
+ const FilePath& file_path) OVERRIDE;
+
+ virtual base::PlatformFileError DeleteSingleDirectory(
+ FileSystemOperationContext* context,
+ const FilePath& file_path) OVERRIDE;
+
// Gets the topmost directory specific to this origin and type. This will
// contain both the directory database's files and all the backing file
// subdirectories.
@@ -160,28 +176,11 @@ class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
// SandboxMountPointProvider would be better?
static FilePath::StringType GetDirectoryNameForType(FileSystemType type);
- // Origin enumerator interface.
- // An instance of this interface is assumed to be called on the file thread.
- class AbstractOriginEnumerator {
- public:
- virtual ~AbstractOriginEnumerator() {}
-
- // Returns the next origin. Returns empty if there are no more origins.
- virtual GURL Next() = 0;
-
- // Returns the current origin's information.
- virtual bool HasFileSystemType(FileSystemType type) const = 0;
- };
-
// This method and all methods of its returned class must be called only on
// the FILE thread. The caller is responsible for deleting the returned
// object.
AbstractOriginEnumerator* CreateOriginEnumerator();
- virtual AbstractFileEnumerator* CreateFileEnumerator(
- FileSystemOperationContext* context,
- const FilePath& root_path) OVERRIDE;
-
// Deletes a directory database from the database list in the ObfuscatedFSFU
// and destroys the database on the disk.
bool DestroyDirectoryDatabase(const GURL& origin, FileSystemType type);
@@ -221,6 +220,7 @@ class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
const GURL& origin_url, FileSystemType type,
const FilePath& source_path, FileInfo* file_info,
int file_flags, base::PlatformFile* handle);
+
// Given the filesystem's root URL and a virtual path, produces a real, full
// local path to the underlying data file. This does a database lookup, and
// verifies that the file exists.
@@ -228,23 +228,28 @@ class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
const GURL& origin_url,
FileSystemType type,
const FilePath& virtual_path);
+
// This converts from a relative path [as is stored in the FileInfo.data_path
// field] to an absolute local path that can be given to the operating system.
// It does no checks as to whether the file actually exists; it's pure path
// manipulation.
FilePath DataPathToLocalPath(
const GURL& origin, FileSystemType type, const FilePath& data_path);
+
// This does the reverse of DataPathToLocalPath.
FilePath LocalPathToDataPath(
const GURL& origin, FileSystemType type, const FilePath& local_path);
+
// This returns NULL if |create| flag is false and a filesystem does not
// exist for the given |origin_url| and |type|.
// For read operations |create| should be false.
FileSystemDirectoryDatabase* GetDirectoryDatabase(
const GURL& origin_url, FileSystemType type, bool create);
+
// Gets the topmost directory specific to this origin. This will
// contain both the filesystem type subdirectories.
FilePath GetDirectoryForOrigin(const GURL& origin, bool create);
+
void MarkUsed();
void DropDatabases();
bool InitOriginDatabase(bool create);
@@ -253,12 +258,11 @@ class ObfuscatedFileSystemFileUtil : public FileSystemFileUtil,
DirectoryMap directories_;
scoped_ptr<FileSystemOriginDatabase> origin_database_;
FilePath file_system_directory_;
- base::OneShotTimer<ObfuscatedFileSystemFileUtil> timer_;
- scoped_ptr<FileSystemFileUtil> underlying_file_util_;
+ base::OneShotTimer<ObfuscatedFileUtil> timer_;
- DISALLOW_COPY_AND_ASSIGN(ObfuscatedFileSystemFileUtil);
+ DISALLOW_COPY_AND_ASSIGN(ObfuscatedFileUtil);
};
} // namespace fileapi
-#endif // WEBKIT_FILEAPI_OBFUSCATED_FILE_SYSTEM_FILE_UTIL_H_
+#endif // WEBKIT_FILEAPI_OBFUSCATED_FILE_UTIL_H_
« no previous file with comments | « webkit/fileapi/obfuscated_file_system_file_util_unittest.cc ('k') | webkit/fileapi/obfuscated_file_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698