Chromium Code Reviews| Index: chrome/browser/chromeos/extensions/file_browser_event_router.cc |
| diff --git a/chrome/browser/chromeos/extensions/file_browser_event_router.cc b/chrome/browser/chromeos/extensions/file_browser_event_router.cc |
| index a2aeb7be0ee887b191bd5104aed87dbb09f04ece..cd4a30c002f380d3d0de1474249093ebb7bf794a 100644 |
| --- a/chrome/browser/chromeos/extensions/file_browser_event_router.cc |
| +++ b/chrome/browser/chromeos/extensions/file_browser_event_router.cc |
| @@ -9,7 +9,6 @@ |
| #include "base/message_loop.h" |
| #include "base/stl_util.h" |
| #include "base/values.h" |
| -#include "chrome/browser/chromeos/cros/cros_library.h" |
| #include "chrome/browser/chromeos/extensions/file_browser_notifications.h" |
| #include "chrome/browser/chromeos/login/user_manager.h" |
| #include "chrome/browser/extensions/extension_event_names.h" |
| @@ -45,13 +44,13 @@ namespace { |
| } |
| DictionaryValue* DiskToDictionaryValue( |
| - const chromeos::MountLibrary::Disk* disk) { |
| + const chromeos::disks::DiskMountManager::Disk* disk) { |
| DictionaryValue* result = new DictionaryValue(); |
| result->SetString("mountPath", disk->mount_path()); |
| result->SetString("devicePath", disk->device_path()); |
| result->SetString("label", disk->device_label()); |
| result->SetString("deviceType", DeviceTypeToString(disk->device_type())); |
| - result->SetInteger("totalSizeKB", disk->total_size() / 1024); |
| + result->SetInteger("totalSizeKB", disk->total_size_in_bytes() / 1024); |
| result->SetBoolean("readOnly", disk->is_read_only()); |
| return result; |
| } |
| @@ -95,11 +94,9 @@ ExtensionFileBrowserEventRouter::~ExtensionFileBrowserEventRouter() { |
| return; |
| } |
| profile_ = NULL; |
| - if (!chromeos::CrosLibrary::Get()->EnsureLoaded()) |
| - return; |
| - chromeos::MountLibrary* lib = |
| - chromeos::CrosLibrary::Get()->GetMountLibrary(); |
| - lib->RemoveObserver(this); |
| + chromeos::disks::DiskMountManager* disk_mount_manager = |
| + chromeos::disks::DiskMountManager::GetInstance(); |
| + disk_mount_manager->RemoveObserver(this); |
|
satorux1
2011/11/15 21:20:24
nit.
chromeos::disks::DiskMountManager::GetInstan
hashimoto
2011/11/16 04:28:15
Done.
|
| } |
| void ExtensionFileBrowserEventRouter::ObserveFileSystemEvents() { |
| @@ -107,14 +104,12 @@ void ExtensionFileBrowserEventRouter::ObserveFileSystemEvents() { |
| NOTREACHED(); |
| return; |
| } |
| - if (!chromeos::CrosLibrary::Get()->EnsureLoaded()) |
| - return; |
| if (chromeos::UserManager::Get()->user_is_logged_in()) { |
| - chromeos::MountLibrary* lib = |
| - chromeos::CrosLibrary::Get()->GetMountLibrary(); |
| - lib->RemoveObserver(this); |
| - lib->AddObserver(this); |
| - lib->RequestMountInfoRefresh(); |
| + chromeos::disks::DiskMountManager* disk_mount_manager = |
| + chromeos::disks::DiskMountManager::GetInstance(); |
| + disk_mount_manager->RemoveObserver(this); |
| + disk_mount_manager->AddObserver(this); |
| + disk_mount_manager->RequestMountInfoRefresh(); |
| } |
| } |
| @@ -155,35 +150,35 @@ void ExtensionFileBrowserEventRouter::RemoveFileWatch( |
| } |
| void ExtensionFileBrowserEventRouter::DiskChanged( |
| - chromeos::MountLibraryEventType event, |
| - const chromeos::MountLibrary::Disk* disk) { |
| + chromeos::disks::DiskMountManagerEventType event, |
| + const chromeos::disks::DiskMountManager::Disk* disk) { |
| // Disregard hidden devices. |
| if (disk->is_hidden()) |
| return; |
| - if (event == chromeos::MOUNT_DISK_ADDED) { |
| + if (event == chromeos::disks::MOUNT_DISK_ADDED) { |
| OnDiskAdded(disk); |
| - } else if (event == chromeos::MOUNT_DISK_REMOVED) { |
| + } else if (event == chromeos::disks::MOUNT_DISK_REMOVED) { |
| OnDiskRemoved(disk); |
| } |
| } |
| void ExtensionFileBrowserEventRouter::DeviceChanged( |
| - chromeos::MountLibraryEventType event, |
| + chromeos::disks::DiskMountManagerEventType event, |
| const std::string& device_path) { |
| - if (event == chromeos::MOUNT_DEVICE_ADDED) { |
| + if (event == chromeos::disks::MOUNT_DEVICE_ADDED) { |
| OnDeviceAdded(device_path); |
| - } else if (event == chromeos::MOUNT_DEVICE_REMOVED) { |
| + } else if (event == chromeos::disks::MOUNT_DEVICE_REMOVED) { |
| OnDeviceRemoved(device_path); |
| - } else if (event == chromeos::MOUNT_DEVICE_SCANNED) { |
| + } else if (event == chromeos::disks::MOUNT_DEVICE_SCANNED) { |
| OnDeviceScanned(device_path); |
| - } else if (event == chromeos::MOUNT_FORMATTING_STARTED) { |
| + } else if (event == chromeos::disks::MOUNT_FORMATTING_STARTED) { |
| // TODO(tbarzic): get rid of '!'. |
| if (device_path[0] == '!') { |
| OnFormattingStarted(device_path.substr(1), false); |
| } else { |
| OnFormattingStarted(device_path, true); |
| } |
| - } else if (event == chromeos::MOUNT_FORMATTING_FINISHED) { |
| + } else if (event == chromeos::disks::MOUNT_FORMATTING_FINISHED) { |
| if (device_path[0] == '!') { |
| OnFormattingFinished(device_path.substr(1), false); |
| } else { |
| @@ -193,21 +188,21 @@ void ExtensionFileBrowserEventRouter::DeviceChanged( |
| } |
| void ExtensionFileBrowserEventRouter::MountCompleted( |
| - chromeos::MountLibrary::MountEvent event_type, |
| + chromeos::disks::DiskMountManager::MountEvent event_type, |
| chromeos::MountError error_code, |
| - const chromeos::MountLibrary::MountPointInfo& mount_info) { |
| + const chromeos::disks::DiskMountManager::MountPointInfo& mount_info) { |
| DispatchMountCompletedEvent(event_type, error_code, mount_info); |
| if (mount_info.mount_type == chromeos::MOUNT_TYPE_DEVICE && |
| - event_type == chromeos::MountLibrary::MOUNTING) { |
| - chromeos::MountLibrary* mount_lib = |
| - chromeos::CrosLibrary::Get()->GetMountLibrary(); |
| - chromeos::MountLibrary::DiskMap::const_iterator disk_it = |
| - mount_lib->disks().find(mount_info.source_path); |
| - if (disk_it == mount_lib->disks().end()) { |
| + event_type == chromeos::disks::DiskMountManager::MOUNTING) { |
| + chromeos::disks::DiskMountManager* disk_mount_manager = |
| + chromeos::disks::DiskMountManager::GetInstance(); |
| + chromeos::disks::DiskMountManager::DiskMap::const_iterator disk_it = |
| + disk_mount_manager->disks().find(mount_info.source_path); |
| + if (disk_it == disk_mount_manager->disks().end()) { |
| return; |
| } |
| - chromeos::MountLibrary::Disk* disk = disk_it->second; |
| + chromeos::disks::DiskMountManager::Disk* disk = disk_it->second; |
| notifications_->ManageNotificationsOnMountCompleted( |
| disk->system_path_prefix(), disk->drive_label(), disk->is_parent(), |
| @@ -260,7 +255,7 @@ void ExtensionFileBrowserEventRouter::DispatchFolderChangeEvent( |
| } |
| void ExtensionFileBrowserEventRouter::DispatchDiskEvent( |
| - const chromeos::MountLibrary::Disk* disk, bool added) { |
| + const chromeos::disks::DiskMountManager::Disk* disk, bool added) { |
| if (!profile_) { |
| NOTREACHED(); |
| return; |
| @@ -282,9 +277,9 @@ void ExtensionFileBrowserEventRouter::DispatchDiskEvent( |
| } |
| void ExtensionFileBrowserEventRouter::DispatchMountCompletedEvent( |
| - chromeos::MountLibrary::MountEvent event, |
| + chromeos::disks::DiskMountManager::MountEvent event, |
| chromeos::MountError error_code, |
| - const chromeos::MountLibrary::MountPointInfo& mount_info) { |
| + const chromeos::disks::DiskMountManager::MountPointInfo& mount_info) { |
| if (!profile_ || mount_info.mount_type == chromeos::MOUNT_TYPE_INVALID) { |
| NOTREACHED(); |
| return; |
| @@ -293,14 +288,16 @@ void ExtensionFileBrowserEventRouter::DispatchMountCompletedEvent( |
| ListValue args; |
| DictionaryValue* mount_info_value = new DictionaryValue(); |
| args.Append(mount_info_value); |
| - if (event == chromeos::MountLibrary::MOUNTING) { |
| + if (event == chromeos::disks::DiskMountManager::MOUNTING) { |
| mount_info_value->SetString("eventType", "mount"); |
| } else { |
| mount_info_value->SetString("eventType", "unmount"); |
| } |
| mount_info_value->SetString("status", MountErrorToString(error_code)); |
| - mount_info_value->SetString("mountType", |
| - chromeos::MountLibrary::MountTypeToString(mount_info.mount_type)); |
| + mount_info_value->SetString( |
| + "mountType", |
| + chromeos::disks::DiskMountManager::MountTypeToString( |
| + mount_info.mount_type)); |
| if (mount_info.mount_type == chromeos::MOUNT_TYPE_ARCHIVE) { |
| GURL source_url; |
| @@ -341,13 +338,13 @@ void ExtensionFileBrowserEventRouter::DispatchMountCompletedEvent( |
| if (relative_mount_path_set && |
| mount_info.mount_type == chromeos::MOUNT_TYPE_DEVICE && |
| !mount_info.mount_condition && |
| - event == chromeos::MountLibrary::MOUNTING) { |
| + event == chromeos::disks::DiskMountManager::MOUNTING) { |
| FileManagerUtil::ViewFolder(FilePath(mount_info.mount_path)); |
| } |
| } |
| void ExtensionFileBrowserEventRouter::OnDiskAdded( |
| - const chromeos::MountLibrary::Disk* disk) { |
| + const chromeos::disks::DiskMountManager::Disk* disk) { |
| VLOG(1) << "Disk added: " << disk->device_path(); |
| if (disk->device_path().empty()) { |
| VLOG(1) << "Empty system path for " << disk->device_path(); |
| @@ -357,23 +354,23 @@ void ExtensionFileBrowserEventRouter::OnDiskAdded( |
| // If disk is not mounted yet, give it a try. |
| if (disk->mount_path().empty()) { |
| // Initiate disk mount operation. |
| - chromeos::MountLibrary* lib = |
| - chromeos::CrosLibrary::Get()->GetMountLibrary(); |
| - lib->MountPath(disk->device_path().c_str(), |
| - chromeos::MOUNT_TYPE_DEVICE, |
| - chromeos::MountPathOptions()); // Unused. |
| + chromeos::disks::DiskMountManager* disk_mount_manager = |
| + chromeos::disks::DiskMountManager::GetInstance(); |
| + disk_mount_manager->MountPath( |
| + disk->device_path().c_str(), |
|
satorux1
2011/11/15 21:20:24
Please remove .c_str()
hashimoto
2011/11/16 04:28:15
Done.
|
| + chromeos::MOUNT_TYPE_DEVICE); |
| } |
| DispatchDiskEvent(disk, true); |
| } |
| void ExtensionFileBrowserEventRouter::OnDiskRemoved( |
| - const chromeos::MountLibrary::Disk* disk) { |
| + const chromeos::disks::DiskMountManager::Disk* disk) { |
| VLOG(1) << "Disk removed: " << disk->device_path(); |
| if (!disk->mount_path().empty()) { |
| - chromeos::MountLibrary* lib = |
| - chromeos::CrosLibrary::Get()->GetMountLibrary(); |
| - lib->UnmountPath(disk->mount_path().c_str()); |
| + chromeos::disks::DiskMountManager* disk_mount_manager = |
| + chromeos::disks::DiskMountManager::GetInstance(); |
| + disk_mount_manager->UnmountPath(disk->mount_path().c_str()); |
|
satorux1
2011/11/15 21:20:24
ditto.
hashimoto
2011/11/16 04:28:15
Done.
|
| } |
| DispatchDiskEvent(disk, false); |
| } |
| @@ -425,11 +422,11 @@ void ExtensionFileBrowserEventRouter::OnFormattingFinished( |
| notifications_->HideNotificationDelayed( |
| FileBrowserNotifications::FORMAT_SUCCESS, device_path, 4000); |
| - chromeos::MountLibrary* lib = |
| - chromeos::CrosLibrary::Get()->GetMountLibrary(); |
| - lib->MountPath(device_path.c_str(), |
| - chromeos::MOUNT_TYPE_DEVICE, |
| - chromeos::MountPathOptions()); // Unused. |
| + chromeos::disks::DiskMountManager* disk_mount_manager = |
| + chromeos::disks::DiskMountManager::GetInstance(); |
| + disk_mount_manager->MountPath( |
| + device_path.c_str(), |
|
satorux1
2011/11/15 21:20:24
ditto.
hashimoto
2011/11/16 04:28:15
Done.
|
| + chromeos::MOUNT_TYPE_DEVICE); |
| } else { |
| notifications_->HideNotification(FileBrowserNotifications::FORMAT_START, |
| device_path); |