summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/extensions/file_manager
diff options
context:
space:
mode:
authorsatorux@chromium.org <satorux@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-17 03:59:35 +0000
committersatorux@chromium.org <satorux@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-17 03:59:35 +0000
commit17d0ba461daac2c49a3b3ebc299f94dc87c91393 (patch)
tree79b5073ecff56192b881b688e1114102c194bbcd /chrome/browser/chromeos/extensions/file_manager
parentadbe1348fc14fc502ca0dc7de3002d37398a07b9 (diff)
downloadchromium_src-17d0ba461daac2c49a3b3ebc299f94dc87c91393.zip
chromium_src-17d0ba461daac2c49a3b3ebc299f94dc87c91393.tar.gz
chromium_src-17d0ba461daac2c49a3b3ebc299f94dc87c91393.tar.bz2
drive: Introduce DriveSystemServiceObserver
Move DriveFileSystem::NotifyFileSystemMounted() and NotifyFileSystemToBeUnmounted() to DriveSystemServiceObserver in favor of less things to have in DriveFileSystem BUG=231788 TEST=none Review URL: https://codereview.chromium.org/13866050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194529 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/extensions/file_manager')
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/drive_test_util.cc20
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.cc2
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.h6
3 files changed, 17 insertions, 11 deletions
diff --git a/chrome/browser/chromeos/extensions/file_manager/drive_test_util.cc b/chrome/browser/chromeos/extensions/file_manager/drive_test_util.cc
index a7a1fc2..265961b 100644
--- a/chrome/browser/chromeos/extensions/file_manager/drive_test_util.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/drive_test_util.cc
@@ -20,31 +20,31 @@ const char kDriveMountPointName[] = "drive";
// Helper class used to wait for |OnFileSystemMounted| event from a drive file
// system.
-class DriveMountPointWaiter : public drive::DriveFileSystemObserver {
+class DriveMountPointWaiter : public drive::DriveSystemServiceObserver {
public:
- explicit DriveMountPointWaiter(drive::DriveFileSystemInterface* file_system)
- : file_system_(file_system) {
- file_system_->AddObserver(this);
+ explicit DriveMountPointWaiter(drive::DriveSystemService* system_service)
+ : system_service_(system_service) {
+ system_service_->AddObserver(this);
}
virtual ~DriveMountPointWaiter() {
- file_system_->RemoveObserver(this);
+ system_service_->RemoveObserver(this);
}
- // DriveFileSystemObserver override.
+ // DriveSystemServiceObserver override.
virtual void OnFileSystemMounted() OVERRIDE {
// Note that it is OK for |run_loop_.Quit| to be called before
// |run_loop_.Run|. In this case |Run| will return immediately.
run_loop_.Quit();
}
- // Runs loop until the file_system_ gets mounted.
+ // Runs loop until the file system is mounted.
void Wait() {
run_loop_.Run();
}
private:
- drive::DriveFileSystemInterface* file_system_;
+ drive::DriveSystemService* system_service_;
base::RunLoop run_loop_;
};
@@ -63,9 +63,9 @@ void WaitUntilDriveMountPointIsAdded(Profile* profile) {
drive::DriveSystemService* system_service =
drive::DriveSystemServiceFactory::FindForProfileRegardlessOfStates(
profile);
- DCHECK(system_service && system_service->file_system());
+ DCHECK(system_service);
- DriveMountPointWaiter mount_point_waiter(system_service->file_system());
+ DriveMountPointWaiter mount_point_waiter(system_service);
base::FilePath ignored;
// GetRegisteredPath succeeds iff the mount point exists.
diff --git a/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.cc b/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.cc
index 8a1c14c..4cf9bd1 100644
--- a/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.cc
@@ -293,6 +293,7 @@ void FileManagerEventRouter::Shutdown() {
DriveSystemService* system_service =
DriveSystemServiceFactory::FindForProfileRegardlessOfStates(profile_);
if (system_service) {
+ system_service->RemoveObserver(this);
system_service->file_system()->RemoveObserver(this);
system_service->drive_service()->RemoveObserver(this);
}
@@ -322,6 +323,7 @@ void FileManagerEventRouter::ObserveFileSystemEvents() {
DriveSystemService* system_service =
DriveSystemServiceFactory::GetForProfileRegardlessOfStates(profile_);
if (system_service) {
+ system_service->AddObserver(this);
system_service->drive_service()->AddObserver(this);
system_service->file_system()->AddObserver(this);
}
diff --git a/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.h b/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.h
index 9a5b327..199f58e 100644
--- a/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.h
+++ b/chrome/browser/chromeos/extensions/file_manager/file_manager_event_router.h
@@ -16,6 +16,7 @@
#include "base/synchronization/lock.h"
#include "chrome/browser/chromeos/drive/drive_file_system_observer.h"
#include "chrome/browser/chromeos/drive/drive_resource_metadata.h"
+#include "chrome/browser/chromeos/drive/drive_system_service.h"
#include "chrome/browser/chromeos/net/connectivity_state_helper_observer.h"
#include "chrome/browser/chromeos/system_key_event_listener.h"
#include "chrome/browser/google_apis/drive_service_interface.h"
@@ -37,6 +38,7 @@ class FileManagerEventRouter
: public chromeos::disks::DiskMountManager::Observer,
public chromeos::ConnectivityStateHelperObserver,
public chromeos::SystemKeyEventListener::ModifiersObserver,
+ public drive::DriveSystemServiceObserver,
public drive::DriveFileSystemObserver,
public google_apis::DriveServiceObserver {
public:
@@ -109,9 +111,11 @@ class FileManagerEventRouter
const google_apis::OperationProgressStatusList& list) OVERRIDE;
virtual void OnRefreshTokenInvalid() OVERRIDE;
- // drive::DriveFileSystemInterface::Observer overrides.
+ // drive::DriveFileSystemObserver overrides.
virtual void OnDirectoryChanged(
const base::FilePath& directory_path) OVERRIDE;
+
+ // drive::DriveSystemServiceObserver overrides.
virtual void OnFileSystemMounted() OVERRIDE;
virtual void OnFileSystemBeingUnmounted() OVERRIDE;