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

Unified Diff: chrome/browser/chromeos/file_system_provider/provided_file_system.cc

Issue 674413002: [fsp] Rename ObserveEntry with AddWatcher. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased. Created 6 years, 2 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/file_system_provider/provided_file_system.cc
diff --git a/chrome/browser/chromeos/file_system_provider/provided_file_system.cc b/chrome/browser/chromeos/file_system_provider/provided_file_system.cc
index 4abc1bf0da27748ca6f4fc75c7c3b9dd3fad876e..a593ce22cd6937ea1d9685852e4ab5bb83216a57 100644
--- a/chrome/browser/chromeos/file_system_provider/provided_file_system.cc
+++ b/chrome/browser/chromeos/file_system_provider/provided_file_system.cc
@@ -10,6 +10,7 @@
#include "base/files/file.h"
#include "chrome/browser/chromeos/file_system_provider/notification_manager.h"
#include "chrome/browser/chromeos/file_system_provider/operations/abort.h"
+#include "chrome/browser/chromeos/file_system_provider/operations/add_watcher.h"
#include "chrome/browser/chromeos/file_system_provider/operations/close_file.h"
#include "chrome/browser/chromeos/file_system_provider/operations/copy_entry.h"
#include "chrome/browser/chromeos/file_system_provider/operations/create_directory.h"
@@ -17,13 +18,12 @@
#include "chrome/browser/chromeos/file_system_provider/operations/delete_entry.h"
#include "chrome/browser/chromeos/file_system_provider/operations/get_metadata.h"
#include "chrome/browser/chromeos/file_system_provider/operations/move_entry.h"
-#include "chrome/browser/chromeos/file_system_provider/operations/observe_directory.h"
#include "chrome/browser/chromeos/file_system_provider/operations/open_file.h"
#include "chrome/browser/chromeos/file_system_provider/operations/read_directory.h"
#include "chrome/browser/chromeos/file_system_provider/operations/read_file.h"
+#include "chrome/browser/chromeos/file_system_provider/operations/remove_watcher.h"
#include "chrome/browser/chromeos/file_system_provider/operations/truncate.h"
#include "chrome/browser/chromeos/file_system_provider/operations/unmount.h"
-#include "chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h"
#include "chrome/browser/chromeos/file_system_provider/operations/write_file.h"
#include "chrome/browser/chromeos/file_system_provider/request_manager.h"
#include "chrome/browser/profiles/profile.h"
@@ -364,32 +364,32 @@ ProvidedFileSystem::AbortCallback ProvidedFileSystem::Truncate(
&ProvidedFileSystem::Abort, weak_ptr_factory_.GetWeakPtr(), request_id);
}
-ProvidedFileSystem::AbortCallback ProvidedFileSystem::ObserveDirectory(
+ProvidedFileSystem::AbortCallback ProvidedFileSystem::AddWatcher(
const GURL& origin,
- const base::FilePath& directory_path,
+ const base::FilePath& entry_path,
bool recursive,
bool persistent,
const storage::AsyncFileUtil::StatusCallback& callback) {
// TODO(mtomasz): Wrap the entire method body with an asynchronous queue to
// avoid races.
if (persistent && !file_system_info_.supports_notify_tag()) {
- OnObserveDirectoryCompleted(origin,
- directory_path,
- recursive,
- persistent,
- callback,
- base::File::FILE_ERROR_INVALID_OPERATION);
+ OnAddWatcherCompleted(origin,
+ entry_path,
+ recursive,
+ persistent,
+ callback,
+ base::File::FILE_ERROR_INVALID_OPERATION);
return AbortCallback();
}
- const ObservedEntryKey key(directory_path, recursive);
- const ObservedEntries::const_iterator it = observed_entries_.find(key);
- if (it != observed_entries_.end()) {
+ const WatcherKey key(entry_path, recursive);
+ const Watchers::const_iterator it = watchers_.find(key);
+ if (it != watchers_.end()) {
const bool exists =
it->second.subscribers.find(origin) != it->second.subscribers.end();
- OnObserveDirectoryCompleted(
+ OnAddWatcherCompleted(
origin,
- directory_path,
+ entry_path,
recursive,
persistent,
callback,
@@ -398,28 +398,27 @@ ProvidedFileSystem::AbortCallback ProvidedFileSystem::ObserveDirectory(
}
const int request_id = request_manager_->CreateRequest(
- OBSERVE_DIRECTORY,
- scoped_ptr<RequestManager::HandlerInterface>(
- new operations::ObserveDirectory(
- event_router_,
- file_system_info_,
- directory_path,
- recursive,
- base::Bind(&ProvidedFileSystem::OnObserveDirectoryCompleted,
- weak_ptr_factory_.GetWeakPtr(),
- origin,
- directory_path,
- recursive,
- persistent,
- callback))));
+ ADD_WATCHER,
+ scoped_ptr<RequestManager::HandlerInterface>(new operations::AddWatcher(
+ event_router_,
+ file_system_info_,
+ entry_path,
+ recursive,
+ base::Bind(&ProvidedFileSystem::OnAddWatcherCompleted,
+ weak_ptr_factory_.GetWeakPtr(),
+ origin,
+ entry_path,
+ recursive,
+ persistent,
+ callback))));
if (!request_id) {
- OnObserveDirectoryCompleted(origin,
- directory_path,
- recursive,
- persistent,
- callback,
- base::File::FILE_ERROR_SECURITY);
+ OnAddWatcherCompleted(origin,
+ entry_path,
+ recursive,
+ persistent,
+ callback,
+ base::File::FILE_ERROR_SECURITY);
return AbortCallback();
}
@@ -427,27 +426,26 @@ ProvidedFileSystem::AbortCallback ProvidedFileSystem::ObserveDirectory(
&ProvidedFileSystem::Abort, weak_ptr_factory_.GetWeakPtr(), request_id);
}
-void ProvidedFileSystem::UnobserveEntry(
+void ProvidedFileSystem::RemoveWatcher(
const GURL& origin,
const base::FilePath& entry_path,
bool recursive,
const storage::AsyncFileUtil::StatusCallback& callback) {
- const ObservedEntryKey key(entry_path, recursive);
- const ObservedEntries::iterator it = observed_entries_.find(key);
- if (it == observed_entries_.end() ||
+ const WatcherKey key(entry_path, recursive);
+ const Watchers::iterator it = watchers_.find(key);
+ if (it == watchers_.end() ||
it->second.subscribers.find(origin) == it->second.subscribers.end()) {
callback.Run(base::File::FILE_ERROR_NOT_FOUND);
return;
}
- // Delete the subscriber in advance, since the list of observed entries is
- // owned by the C++ layer, not by the extension.
+ // Delete the subscriber in advance, since the list of watchers is owned by
+ // the C++ layer, not by the extension.
it->second.subscribers.erase(origin);
- FOR_EACH_OBSERVER(
- ProvidedFileSystemObserver,
- observers_,
- OnObservedEntryListChanged(file_system_info_, observed_entries_));
+ FOR_EACH_OBSERVER(ProvidedFileSystemObserver,
+ observers_,
+ OnWatcherListChanged(file_system_info_, watchers_));
// If there are other subscribers, then do not remove the obsererver, but
// simply return a success.
@@ -457,15 +455,15 @@ void ProvidedFileSystem::UnobserveEntry(
}
// Delete the watcher in advance.
- observed_entries_.erase(it);
+ watchers_.erase(it);
// Even if the extension returns an error, the callback is called with base::
- // File::FILE_OK. The reason for that is that the observed is not watched
- // anymore anyway, as it's removed in advance.
+ // File::FILE_OK. The reason for that is that the entry is not watche anymore
+ // anyway, as it's removed in advance.
const int request_id = request_manager_->CreateRequest(
- UNOBSERVE_ENTRY,
+ REMOVE_WATCHER,
scoped_ptr<RequestManager::HandlerInterface>(
- new operations::UnobserveEntry(
+ new operations::RemoveWatcher(
event_router_,
file_system_info_,
entry_path,
@@ -483,8 +481,8 @@ RequestManager* ProvidedFileSystem::GetRequestManager() {
return request_manager_.get();
}
-ObservedEntries* ProvidedFileSystem::GetObservedEntries() {
- return &observed_entries_;
+Watchers* ProvidedFileSystem::GetWatchers() {
+ return &watchers_;
}
void ProvidedFileSystem::AddObserver(ProvidedFileSystemObserver* observer) {
@@ -498,14 +496,14 @@ void ProvidedFileSystem::RemoveObserver(ProvidedFileSystemObserver* observer) {
}
bool ProvidedFileSystem::Notify(
- const base::FilePath& observed_path,
+ const base::FilePath& entry_path,
bool recursive,
ProvidedFileSystemObserver::ChangeType change_type,
scoped_ptr<ProvidedFileSystemObserver::Changes> changes,
const std::string& tag) {
- const ObservedEntryKey key(observed_path, recursive);
- const ObservedEntries::iterator it = observed_entries_.find(key);
- if (it == observed_entries_.end())
+ const WatcherKey key(entry_path, recursive);
+ const Watchers::iterator it = watchers_.find(key);
+ if (it == watchers_.end())
return false;
// The tag must be provided if and only if it's explicitly supported.
@@ -519,7 +517,7 @@ bool ProvidedFileSystem::Notify(
scoped_refptr<AutoUpdater> auto_updater(
new AutoUpdater(base::Bind(&ProvidedFileSystem::OnNotifyCompleted,
weak_ptr_factory_.GetWeakPtr(),
- observed_path,
+ entry_path,
recursive,
change_type,
base::Passed(&changes),
@@ -528,11 +526,11 @@ bool ProvidedFileSystem::Notify(
FOR_EACH_OBSERVER(ProvidedFileSystemObserver,
observers_,
- OnObservedEntryChanged(file_system_info_,
- it->second,
- change_type,
- changes_ref,
- auto_updater->CreateCallback()));
+ OnWatcherChanged(file_system_info_,
+ it->second,
+ change_type,
+ changes_ref,
+ auto_updater->CreateCallback()));
return true;
}
@@ -558,9 +556,9 @@ void ProvidedFileSystem::Abort(
}
}
-void ProvidedFileSystem::OnObserveDirectoryCompleted(
+void ProvidedFileSystem::OnAddWatcherCompleted(
const GURL& origin,
- const base::FilePath& directory_path,
+ const base::FilePath& entry_path,
bool recursive,
bool persistent,
const storage::AsyncFileUtil::StatusCallback& callback,
@@ -570,38 +568,37 @@ void ProvidedFileSystem::OnObserveDirectoryCompleted(
return;
}
- const ObservedEntryKey key(directory_path, recursive);
- const ObservedEntries::iterator it = observed_entries_.find(key);
- if (it != observed_entries_.end()) {
+ const WatcherKey key(entry_path, recursive);
+ const Watchers::iterator it = watchers_.find(key);
+ if (it != watchers_.end()) {
callback.Run(base::File::FILE_OK);
return;
}
- ObservedEntry* const observed_entry = &observed_entries_[key];
- observed_entry->entry_path = directory_path;
- observed_entry->recursive = recursive;
- observed_entry->subscribers[origin].origin = origin;
- observed_entry->subscribers[origin].persistent |= persistent;
+ Watcher* const watcher = &watchers_[key];
+ watcher->entry_path = entry_path;
+ watcher->recursive = recursive;
+ watcher->subscribers[origin].origin = origin;
+ watcher->subscribers[origin].persistent |= persistent;
- FOR_EACH_OBSERVER(
- ProvidedFileSystemObserver,
- observers_,
- OnObservedEntryListChanged(file_system_info_, observed_entries_));
+ FOR_EACH_OBSERVER(ProvidedFileSystemObserver,
+ observers_,
+ OnWatcherListChanged(file_system_info_, watchers_));
callback.Run(base::File::FILE_OK);
}
void ProvidedFileSystem::OnNotifyCompleted(
- const base::FilePath& observed_path,
+ const base::FilePath& entry_path,
bool recursive,
ProvidedFileSystemObserver::ChangeType change_type,
scoped_ptr<ProvidedFileSystemObserver::Changes> /* changes */,
const std::string& last_tag,
const std::string& tag) {
- const ObservedEntryKey key(observed_path, recursive);
- const ObservedEntries::iterator it = observed_entries_.find(key);
- // Check if the entry is still observed.
- if (it == observed_entries_.end())
+ const WatcherKey key(entry_path, recursive);
+ const Watchers::iterator it = watchers_.find(key);
+ // Check if the entry is still watched.
+ if (it == watchers_.end())
return;
// Another following notification finished earlier.
@@ -618,18 +615,18 @@ void ProvidedFileSystem::OnNotifyCompleted(
FOR_EACH_OBSERVER(ProvidedFileSystemObserver,
observers_,
- OnObservedEntryTagUpdated(file_system_info_, it->second));
+ OnWatcherTagUpdated(file_system_info_, it->second));
- // If the observed entry is deleted, then unobserve it.
+ // If the watched entry is deleted, then remove the watcher.
if (change_type == ProvidedFileSystemObserver::DELETED) {
// Make a copy, since the |it| iterator will get invalidated on the last
// subscriber.
Subscribers subscribers = it->second.subscribers;
for (const auto& subscriber_it : subscribers) {
- UnobserveEntry(subscriber_it.second.origin,
- observed_path,
- recursive,
- base::Bind(&EmptyStatusCallback));
+ RemoveWatcher(subscriber_it.second.origin,
+ entry_path,
+ recursive,
+ base::Bind(&EmptyStatusCallback));
}
}
}

Powered by Google App Engine
This is Rietveld 408576698