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

Unified Diff: chrome/browser/chromeos/gdata/gdata_file_system_interface.h

Issue 10874028: Rename GDataFileSystem* to DriveFileSystem* (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase. Created 8 years, 4 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/gdata/gdata_file_system_interface.h
diff --git a/chrome/browser/chromeos/gdata/gdata_file_system_interface.h b/chrome/browser/chromeos/gdata/gdata_file_system_interface.h
deleted file mode 100644
index a2dfa80b7f5dfcdd8f007082d919677f1531548e..0000000000000000000000000000000000000000
--- a/chrome/browser/chromeos/gdata/gdata_file_system_interface.h
+++ /dev/null
@@ -1,368 +0,0 @@
-// Copyright (c) 2012 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.
-
-#ifndef CHROME_BROWSER_CHROMEOS_GDATA_GDATA_FILE_SYSTEM_INTERFACE_H_
-#define CHROME_BROWSER_CHROMEOS_GDATA_GDATA_FILE_SYSTEM_INTERFACE_H_
-
-#include <string>
-#include <vector>
-
-#include "base/memory/scoped_ptr.h"
-#include "chrome/browser/chromeos/gdata/drive_cache.h"
-#include "chrome/browser/chromeos/gdata/drive_resource_metadata.h"
-#include "chrome/browser/chromeos/gdata/gdata_operations.h"
-#include "chrome/browser/chromeos/gdata/gdata_upload_file_info.h"
-
-namespace gdata {
-
-class DocumentEntry;
-class DriveEntryProto;
-
-typedef std::vector<DriveEntryProto> DriveEntryProtoVector;
-
-// Information about search result returned by Search Async callback.
-// This is data needed to create a file system entry that will be used by file
-// browser.
-struct SearchResultInfo {
- SearchResultInfo(const FilePath& in_path, bool in_is_directory)
- : path(in_path),
- is_directory(in_is_directory) {
- }
-
- FilePath path;
- bool is_directory;
-};
-
-// Used to get files from the file system.
-typedef base::Callback<void(DriveFileError error,
- const FilePath& file_path,
- const std::string& mime_type,
- DriveFileType file_type)> GetFileCallback;
-
-// Used to read a directory from the file system.
-// Similar to ReadDirectoryCallback but this one provides
-// |hide_hosted_documents|
-// If |error| is not DRIVE_FILE_OK, |entries| is set to NULL.
-// |entries| are contents, both files and directories, of the directory.
-typedef base::Callback<void(DriveFileError error,
- bool hide_hosted_documents,
- scoped_ptr<DriveEntryProtoVector> entries)>
- ReadDirectoryWithSettingCallback;
-
-// Used to get drive content search results.
-// If |error| is not DRIVE_FILE_OK, |result_paths| is empty.
-typedef base::Callback<void(
- DriveFileError error,
- const GURL& next_feed,
- scoped_ptr<std::vector<SearchResultInfo> > result_paths)> SearchCallback;
-
-// Used to open files from the file system. |file_path| is the path on the local
-// file system for the opened file.
-typedef base::Callback<void(DriveFileError error,
- const FilePath& file_path)> OpenFileCallback;
-
-// Used to get available space for the account from GData.
-typedef base::Callback<void(DriveFileError error,
- int64 bytes_total,
- int64 bytes_used)> GetAvailableSpaceCallback;
-
-// GData file system abstraction layer.
-// The interface is defined to make GDataFileSystem mockable.
-class GDataFileSystemInterface {
- public:
- virtual ~GDataFileSystemInterface() {}
-
- // Used to notify events on the file system.
- // All events are notified on UI thread.
- class Observer {
- public:
- // Triggered when a content of a directory has been changed.
- // |directory_path| is a virtual directory path (/gdata/...) representing
- // changed directory.
- virtual void OnDirectoryChanged(const FilePath& directory_path) {}
-
- // Triggered when the file system is initially loaded.
- virtual void OnInitialLoadFinished() {}
-
- // Triggered when a document feed is fetched. |num_accumulated_entries|
- // tells the number of entries fetched so far.
- virtual void OnDocumentFeedFetched(int num_accumulated_entries) {}
-
- // Triggered when the feed from the server is loaded.
- virtual void OnFeedFromServerLoaded() {}
-
- // Triggered when the file system is mounted.
- virtual void OnFileSystemMounted() {}
- // Triggered when the file system is being unmounted.
- virtual void OnFileSystemBeingUnmounted() {}
-
- protected:
- virtual ~Observer() {}
- };
-
- // Initializes the object. This function should be called before any
- // other functions.
- virtual void Initialize() = 0;
-
- // Adds and removes the observer.
- virtual void AddObserver(Observer* observer) = 0;
- virtual void RemoveObserver(Observer* observer) = 0;
-
- // Starts and stops periodic updates.
- virtual void StartUpdates() = 0;
- virtual void StopUpdates() = 0;
-
- // Notifies the file system was just mounted.
- virtual void NotifyFileSystemMounted() = 0;
-
- // Notifies the file system is going to be unmounted.
- virtual void NotifyFileSystemToBeUnmounted() = 0;
-
- // Checks for updates on the server.
- virtual void CheckForUpdates() = 0;
-
- // Finds an entry (file or directory) by using |resource_id|. This call
- // does not initiate content refreshing.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void GetEntryInfoByResourceId(
- const std::string& resource_id,
- const GetEntryInfoWithFilePathCallback& callback) = 0;
-
- // Initiates transfer of |remote_src_file_path| to |local_dest_file_path|.
- // |remote_src_file_path| is the virtual source path on the gdata file system.
- // |local_dest_file_path| is the destination path on the local file system.
- //
- // Must be called from *UI* thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void TransferFileFromRemoteToLocal(
- const FilePath& remote_src_file_path,
- const FilePath& local_dest_file_path,
- const FileOperationCallback& callback) = 0;
-
- // Initiates transfer of |local_src_file_path| to |remote_dest_file_path|.
- // |local_src_file_path| must be a file from the local file system.
- // |remote_dest_file_path| is the virtual destination path within gdata file
- // system.
- //
- // Must be called from *UI* thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void TransferFileFromLocalToRemote(
- const FilePath& local_src_file_path,
- const FilePath& remote_dest_file_path,
- const FileOperationCallback& callback) = 0;
-
- // Retrieves a file at the virtual path |file_path| on the gdata file system
- // onto the cache, and mark it dirty. The local path to the cache file is
- // returned to |callback|. After opening the file, both read and write
- // on the file can be done with normal local file operations.
- //
- // |CloseFile| must be called when the modification to the cache is done.
- // Otherwise, GData file system does not pick up the file for uploading.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- virtual void OpenFile(const FilePath& file_path,
- const OpenFileCallback& callback) = 0;
-
- // Closes a file at the virtual path |file_path| on the gdata file system,
- // which is opened via OpenFile(). It commits the dirty flag on the cache.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void CloseFile(const FilePath& file_path,
- const FileOperationCallback& callback) = 0;
-
- // Copies |src_file_path| to |dest_file_path| on the file system.
- // |src_file_path| can be a hosted document (see limitations below).
- // |dest_file_path| is expected to be of the same type of |src_file_path|
- // (i.e. if |src_file_path| is a file, |dest_file_path| will be created as
- // a file).
- //
- // This method also has the following assumptions/limitations that may be
- // relaxed or addressed later:
- // - |src_file_path| cannot be a regular file (i.e. non-hosted document)
- // or a directory.
- // - |dest_file_path| must not exist.
- // - The parent of |dest_file_path| must already exist.
- //
- // The file entries represented by |src_file_path| and the parent directory
- // of |dest_file_path| need to be present in the in-memory representation
- // of the file system.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void Copy(const FilePath& src_file_path,
- const FilePath& dest_file_path,
- const FileOperationCallback& callback) = 0;
-
- // Moves |src_file_path| to |dest_file_path| on the file system.
- // |src_file_path| can be a file (regular or hosted document) or a directory.
- // |dest_file_path| is expected to be of the same type of |src_file_path|
- // (i.e. if |src_file_path| is a file, |dest_file_path| will be created as
- // a file).
- //
- // This method also has the following assumptions/limitations that may be
- // relaxed or addressed later:
- // - |dest_file_path| must not exist.
- // - The parent of |dest_file_path| must already exist.
- //
- // The file entries represented by |src_file_path| and the parent directory
- // of |dest_file_path| need to be present in the in-memory representation
- // of the file system.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void Move(const FilePath& src_file_path,
- const FilePath& dest_file_path,
- const FileOperationCallback& callback) = 0;
-
- // Removes |file_path| from the file system. If |is_recursive| is set and
- // |file_path| represents a directory, we will also delete all of its
- // contained children elements. The file entry represented by |file_path|
- // needs to be present in in-memory representation of the file system that
- // in order to be removed.
- //
- // TODO(satorux): is_recursive is not supported yet. crbug.com/138282
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- virtual void Remove(const FilePath& file_path,
- bool is_recursive,
- const FileOperationCallback& callback) = 0;
-
- // Creates new directory under |directory_path|. If |is_exclusive| is true,
- // an error is raised in case a directory is already present at the
- // |directory_path|. If |is_recursive| is true, the call creates parent
- // directories as needed just like mkdir -p does.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- virtual void CreateDirectory(const FilePath& directory_path,
- bool is_exclusive,
- bool is_recursive,
- const FileOperationCallback& callback) = 0;
-
- // Creates a file at |file_path|. If the flag |is_exclusive| is true, an
- // error is raised when a file already exists at the path. It is
- // an error if a directory or a hosted document is already present at the
- // path, or the parent directory of the path is not present yet.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread
- // |callback| must not be null.
- virtual void CreateFile(const FilePath& file_path,
- bool is_exclusive,
- const FileOperationCallback& callback) = 0;
-
- // Gets |file_path| from the file system. The file entry represented by
- // |file_path| needs to be present in in-memory representation of the file
- // system in order to be retrieved. If the file is not cached, the file
- // will be downloaded through gdata api.
- //
- // Can be called from UI/IO thread. |get_file_callback| and
- // |get_content_callback| are run on the calling thread.
- virtual void GetFileByPath(
- const FilePath& file_path,
- const GetFileCallback& get_file_callback,
- const GetContentCallback& get_content_callback) = 0;
-
- // Gets a file by the given |resource_id| from the gdata server. Used for
- // fetching pinned-but-not-fetched files.
- //
- // Can be called from UI/IO thread. |get_file_callback| and
- // |get_content_callback| are run on the calling thread.
- virtual void GetFileByResourceId(
- const std::string& resource_id,
- const GetFileCallback& get_file_callback,
- const GetContentCallback& get_content_callback) = 0;
-
- // Updates a file by the given |resource_id| on the gdata server by
- // uploading an updated version. Used for uploading dirty files. The file
- // should already be present in the cache.
- //
- // TODO(satorux): As of now, the function only handles files with the dirty
- // bit committed. We should eliminate the restriction. crbug.com/134558.
- //
- // Can be called from UI/IO thread. |callback| and is run on the calling
- // thread. |callback| must not be null.
- virtual void UpdateFileByResourceId(
- const std::string& resource_id,
- const FileOperationCallback& callback) = 0;
-
- // Finds an entry (a file or a directory) by |file_path|. This call will also
- // retrieve and refresh file system content from server and disk cache.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void GetEntryInfoByPath(const FilePath& file_path,
- const GetEntryInfoCallback& callback) = 0;
-
- // Finds and reads a directory by |file_path|. This call will also retrieve
- // and refresh file system content from server and disk cache.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- // |callback| must not be null.
- virtual void ReadDirectoryByPath(
- const FilePath& file_path,
- const ReadDirectoryWithSettingCallback& callback) = 0;
-
- // Requests a refresh of the directory pointed by |file_path| (i.e. fetches
- // the latest metadata of files in the target directory).
- //
- // In particular, this function is used to get the latest thumbnail
- // URLs. Thumbnail URLs change periodically even if contents of files are
- // not changed, hence we should get the new thumbnail URLs manually if we
- // detect that the existing thumbnail URLs are stale.
- //
- // Upon success, the metadata of files in the target directory is updated,
- // and the change is notified via Observer::OnDirectoryChanged(). Note that
- // this function ignores changes in directories in the target
- // directory. Changes in directories are handled via the delta feeds.
- //
- // Can be called from UI/IO thread.
- virtual void RequestDirectoryRefresh(const FilePath& file_path) = 0;
-
- // Does server side content search for |search_query|.
- // If |next_feed| is set, this is the feed url that will be fetched.
- // Search results will be returned as a list of results' |SearchResultInfo|
- // structs, which contains file's path and is_directory flag.
- //
- // Can be called from UI/IO thread. |callback| is run on the calling thread.
- virtual void Search(const std::string& search_query,
- const GURL& next_feed,
- const SearchCallback& callback) = 0;
-
- // Fetches the user's Account Metadata to find out current quota information
- // and returns it to the callback.
- virtual void GetAvailableSpace(const GetAvailableSpaceCallback& callback) = 0;
-
- // Adds a file entry from |entry| under |virtual_dir_path|, and modifies
- // the cache state.
- //
- // When uploading a new file, adds a new file entry, and store its content
- // from |file_content_path| into the cache.
- //
- // When uploading an existing file, replaces the file entry with a new one,
- // and clears the dirty bit in the cache.
- //
- // |callback| will be called on the UI thread upon completion of operation.
- virtual void AddUploadedFile(UploadMode upload_mode,
- const FilePath& virtual_dir_path,
- scoped_ptr<DocumentEntry> entry,
- const FilePath& file_content_path,
- DriveCache::FileOperationType cache_operation,
- const base::Closure& callback) = 0;
-
- // Updates the data associated with the file referenced by |resource_id| and
- // |md5|. The data is copied from |file_content_path|.
- //
- // |callback| will be called on the UI thread upon completion of operation.
- virtual void UpdateEntryData(const std::string& resource_id,
- const std::string& md5,
- scoped_ptr<DocumentEntry> entry,
- const FilePath& file_content_path,
- const base::Closure& callback) = 0;
-};
-
-} // namespace gdata
-
-#endif // CHROME_BROWSER_CHROMEOS_GDATA_GDATA_FILE_SYSTEM_INTERFACE_H_
« no previous file with comments | « chrome/browser/chromeos/gdata/gdata_file_system.cc ('k') | chrome/browser/chromeos/gdata/gdata_file_system_proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698