| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/gdata/gdata_system_service.h" | 5 #include "chrome/browser/chromeos/gdata/gdata_system_service.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
| 9 #include "chrome/browser/browser_process.h" | 9 #include "chrome/browser/browser_process.h" |
| 10 #include "chrome/browser/chromeos/extensions/file_browser_event_router.h" |
| 10 #include "chrome/browser/chromeos/gdata/drive_webapps_registry.h" | 11 #include "chrome/browser/chromeos/gdata/drive_webapps_registry.h" |
| 11 #include "chrome/browser/chromeos/gdata/gdata_contacts_service.h" | 12 #include "chrome/browser/chromeos/gdata/gdata_contacts_service.h" |
| 12 #include "chrome/browser/chromeos/gdata/gdata_documents_service.h" | 13 #include "chrome/browser/chromeos/gdata/gdata_documents_service.h" |
| 13 #include "chrome/browser/chromeos/gdata/gdata_download_observer.h" | 14 #include "chrome/browser/chromeos/gdata/gdata_download_observer.h" |
| 14 #include "chrome/browser/chromeos/gdata/gdata_file_system.h" | 15 #include "chrome/browser/chromeos/gdata/gdata_file_system.h" |
| 15 #include "chrome/browser/chromeos/gdata/gdata_file_system_proxy.h" | |
| 16 #include "chrome/browser/chromeos/gdata/gdata_sync_client.h" | 16 #include "chrome/browser/chromeos/gdata/gdata_sync_client.h" |
| 17 #include "chrome/browser/chromeos/gdata/gdata_uploader.h" | 17 #include "chrome/browser/chromeos/gdata/gdata_uploader.h" |
| 18 #include "chrome/browser/chromeos/gdata/gdata_util.h" | 18 #include "chrome/browser/chromeos/gdata/gdata_util.h" |
| 19 #include "chrome/browser/download/download_service.h" | 19 #include "chrome/browser/download/download_service.h" |
| 20 #include "chrome/browser/download/download_service_factory.h" | 20 #include "chrome/browser/download/download_service_factory.h" |
| 21 #include "chrome/browser/profiles/profile.h" | 21 #include "chrome/browser/profiles/profile.h" |
| 22 #include "chrome/browser/profiles/profile_dependency_manager.h" | 22 #include "chrome/browser/profiles/profile_dependency_manager.h" |
| 23 #include "content/public/browser/browser_context.h" | |
| 24 #include "content/public/browser/browser_thread.h" | 23 #include "content/public/browser/browser_thread.h" |
| 25 #include "webkit/fileapi/file_system_context.h" | |
| 26 #include "webkit/fileapi/file_system_mount_point_provider.h" | |
| 27 | 24 |
| 28 using content::BrowserContext; | 25 using content::BrowserContext; |
| 29 using content::BrowserThread; | 26 using content::BrowserThread; |
| 30 | 27 |
| 31 namespace gdata { | 28 namespace gdata { |
| 32 namespace { | 29 namespace { |
| 33 | 30 |
| 34 // Used in test to setup system service. | 31 // Used in test to setup system service. |
| 35 DocumentsServiceInterface* g_test_documents_service = NULL; | 32 DocumentsServiceInterface* g_test_documents_service = NULL; |
| 36 const std::string* g_test_cache_root = NULL; | 33 const std::string* g_test_cache_root = NULL; |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 download_observer_.reset(); | 96 download_observer_.reset(); |
| 100 file_system_.reset(); | 97 file_system_.reset(); |
| 101 webapps_registry_.reset(); | 98 webapps_registry_.reset(); |
| 102 uploader_.reset(); | 99 uploader_.reset(); |
| 103 documents_service_.reset(); | 100 documents_service_.reset(); |
| 104 } | 101 } |
| 105 | 102 |
| 106 void GDataSystemService::AddDriveMountPoint() { | 103 void GDataSystemService::AddDriveMountPoint() { |
| 107 if (!gdata::util::IsGDataAvailable(profile_)) | 104 if (!gdata::util::IsGDataAvailable(profile_)) |
| 108 return; | 105 return; |
| 109 | 106 file_system_->AddDriveMountPoint(); |
| 110 const FilePath mount_point = gdata::util::GetGDataMountPointPath(); | |
| 111 fileapi::ExternalFileSystemMountPointProvider* provider = | |
| 112 BrowserContext::GetFileSystemContext(profile_)->external_provider(); | |
| 113 if (provider && !provider->HasMountPoint(mount_point)) { | |
| 114 provider->AddRemoteMountPoint( | |
| 115 mount_point, | |
| 116 new GDataFileSystemProxy(file_system_.get())); | |
| 117 } | |
| 118 } | 107 } |
| 119 | 108 |
| 120 void GDataSystemService::RemoveDriveMountPoint() { | 109 void GDataSystemService::RemoveDriveMountPoint() { |
| 121 const FilePath mount_point = gdata::util::GetGDataMountPointPath(); | 110 file_system_->RemoveDriveMountPoint(); |
| 122 fileapi::ExternalFileSystemMountPointProvider* provider = | |
| 123 BrowserContext::GetFileSystemContext(profile_)->external_provider(); | |
| 124 if (provider && provider->HasMountPoint(mount_point)) | |
| 125 provider->RemoveMountPoint(mount_point); | |
| 126 } | 111 } |
| 127 | 112 |
| 128 //===================== GDataSystemServiceFactory ============================= | 113 //===================== GDataSystemServiceFactory ============================= |
| 129 | 114 |
| 130 // static | 115 // static |
| 131 GDataSystemService* GDataSystemServiceFactory::GetForProfile( | 116 GDataSystemService* GDataSystemServiceFactory::GetForProfile( |
| 132 Profile* profile) { | 117 Profile* profile) { |
| 133 return static_cast<GDataSystemService*>( | 118 return static_cast<GDataSystemService*>( |
| 134 GetInstance()->GetServiceForProfile(profile, true)); | 119 GetInstance()->GetServiceForProfile(profile, true)); |
| 135 } | 120 } |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 184 g_test_cache_root ? FilePath(*g_test_cache_root) : | 169 g_test_cache_root ? FilePath(*g_test_cache_root) : |
| 185 GDataCache::GetCacheRootPath(profile); | 170 GDataCache::GetCacheRootPath(profile); |
| 186 delete g_test_cache_root; | 171 delete g_test_cache_root; |
| 187 g_test_cache_root = NULL; | 172 g_test_cache_root = NULL; |
| 188 | 173 |
| 189 service->Initialize(documents_service, cache_root); | 174 service->Initialize(documents_service, cache_root); |
| 190 return service; | 175 return service; |
| 191 } | 176 } |
| 192 | 177 |
| 193 } // namespace gdata | 178 } // namespace gdata |
| OLD | NEW |