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/sync_file_system/sync_file_system_service.h" | 5 #include "chrome/browser/sync_file_system/sync_file_system_service.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
260 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 260 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
261 | 261 |
262 local_sync_runners_.clear(); | 262 local_sync_runners_.clear(); |
263 remote_sync_runners_.clear(); | 263 remote_sync_runners_.clear(); |
264 | 264 |
265 local_service_->Shutdown(); | 265 local_service_->Shutdown(); |
266 local_service_.reset(); | 266 local_service_.reset(); |
267 | 267 |
268 remote_service_.reset(); | 268 remote_service_.reset(); |
269 | 269 |
270 sync_driver::SyncService* profile_sync_service = | 270 syncer::SyncService* profile_sync_service = |
271 ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_); | 271 ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_); |
272 if (profile_sync_service) | 272 if (profile_sync_service) |
273 profile_sync_service->RemoveObserver(this); | 273 profile_sync_service->RemoveObserver(this); |
274 | 274 |
275 ExtensionRegistry::Get(profile_)->RemoveObserver(this); | 275 ExtensionRegistry::Get(profile_)->RemoveObserver(this); |
276 | 276 |
277 profile_ = nullptr; | 277 profile_ = nullptr; |
278 } | 278 } |
279 | 279 |
280 SyncFileSystemService::~SyncFileSystemService() { | 280 SyncFileSystemService::~SyncFileSystemService() { |
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
469 local_service_->SetLocalChangeProcessorCallback( | 469 local_service_->SetLocalChangeProcessorCallback( |
470 base::Bind(&GetLocalChangeProcessorAdapter, AsWeakPtr())); | 470 base::Bind(&GetLocalChangeProcessorAdapter, AsWeakPtr())); |
471 | 471 |
472 remote_service_->AddServiceObserver(remote_syncer.get()); | 472 remote_service_->AddServiceObserver(remote_syncer.get()); |
473 remote_service_->AddFileStatusObserver(this); | 473 remote_service_->AddFileStatusObserver(this); |
474 remote_service_->SetRemoteChangeProcessor(local_service_.get()); | 474 remote_service_->SetRemoteChangeProcessor(local_service_.get()); |
475 | 475 |
476 local_sync_runners_.push_back(local_syncer.release()); | 476 local_sync_runners_.push_back(local_syncer.release()); |
477 remote_sync_runners_.push_back(remote_syncer.release()); | 477 remote_sync_runners_.push_back(remote_syncer.release()); |
478 | 478 |
479 sync_driver::SyncService* profile_sync_service = | 479 syncer::SyncService* profile_sync_service = |
480 ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_); | 480 ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_); |
481 if (profile_sync_service) { | 481 if (profile_sync_service) { |
482 UpdateSyncEnabledStatus(profile_sync_service); | 482 UpdateSyncEnabledStatus(profile_sync_service); |
483 profile_sync_service->AddObserver(this); | 483 profile_sync_service->AddObserver(this); |
484 } | 484 } |
485 | 485 |
486 ExtensionRegistry::Get(profile_)->AddObserver(this); | 486 ExtensionRegistry::Get(profile_)->AddObserver(this); |
487 } | 487 } |
488 | 488 |
489 void SyncFileSystemService::DidInitializeFileSystem( | 489 void SyncFileSystemService::DidInitializeFileSystem( |
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
723 const Extension* extension) { | 723 const Extension* extension) { |
724 GURL app_origin = Extension::GetBaseURLFromExtensionId(extension->id()); | 724 GURL app_origin = Extension::GetBaseURLFromExtensionId(extension->id()); |
725 DVLOG(1) << "Handle extension notification for LOADED: " << app_origin; | 725 DVLOG(1) << "Handle extension notification for LOADED: " << app_origin; |
726 remote_service_->EnableOrigin( | 726 remote_service_->EnableOrigin( |
727 app_origin, | 727 app_origin, |
728 base::Bind(&DidHandleLoadEvent, app_origin)); | 728 base::Bind(&DidHandleLoadEvent, app_origin)); |
729 local_service_->SetOriginEnabled(app_origin, true); | 729 local_service_->SetOriginEnabled(app_origin, true); |
730 } | 730 } |
731 | 731 |
732 void SyncFileSystemService::OnStateChanged() { | 732 void SyncFileSystemService::OnStateChanged() { |
733 sync_driver::SyncService* profile_sync_service = | 733 syncer::SyncService* profile_sync_service = |
734 ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_); | 734 ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_); |
735 if (profile_sync_service) | 735 if (profile_sync_service) |
736 UpdateSyncEnabledStatus(profile_sync_service); | 736 UpdateSyncEnabledStatus(profile_sync_service); |
737 } | 737 } |
738 | 738 |
739 void SyncFileSystemService::OnFileStatusChanged( | 739 void SyncFileSystemService::OnFileStatusChanged( |
740 const FileSystemURL& url, | 740 const FileSystemURL& url, |
741 SyncFileType file_type, | 741 SyncFileType file_type, |
742 SyncFileStatus sync_status, | 742 SyncFileStatus sync_status, |
743 SyncAction action_taken, | 743 SyncAction action_taken, |
744 SyncDirection direction) { | 744 SyncDirection direction) { |
745 FOR_EACH_OBSERVER( | 745 FOR_EACH_OBSERVER( |
746 SyncEventObserver, observers_, | 746 SyncEventObserver, observers_, |
747 OnFileSynced(url, file_type, sync_status, action_taken, direction)); | 747 OnFileSynced(url, file_type, sync_status, action_taken, direction)); |
748 } | 748 } |
749 | 749 |
750 void SyncFileSystemService::UpdateSyncEnabledStatus( | 750 void SyncFileSystemService::UpdateSyncEnabledStatus( |
751 sync_driver::SyncService* profile_sync_service) { | 751 syncer::SyncService* profile_sync_service) { |
752 if (!profile_sync_service->IsFirstSetupComplete()) | 752 if (!profile_sync_service->IsFirstSetupComplete()) |
753 return; | 753 return; |
754 bool old_sync_enabled = sync_enabled_; | 754 bool old_sync_enabled = sync_enabled_; |
755 sync_enabled_ = profile_sync_service->GetActiveDataTypes().Has( | 755 sync_enabled_ = profile_sync_service->GetActiveDataTypes().Has( |
756 syncer::APPS); | 756 syncer::APPS); |
757 remote_service_->SetSyncEnabled(sync_enabled_); | 757 remote_service_->SetSyncEnabled(sync_enabled_); |
758 if (!old_sync_enabled && sync_enabled_) | 758 if (!old_sync_enabled && sync_enabled_) |
759 RunForEachSyncRunners(&SyncProcessRunner::Schedule); | 759 RunForEachSyncRunners(&SyncProcessRunner::Schedule); |
760 } | 760 } |
761 | 761 |
762 void SyncFileSystemService::RunForEachSyncRunners( | 762 void SyncFileSystemService::RunForEachSyncRunners( |
763 void(SyncProcessRunner::*method)()) { | 763 void(SyncProcessRunner::*method)()) { |
764 for (ScopedVector<SyncProcessRunner>::iterator iter = | 764 for (ScopedVector<SyncProcessRunner>::iterator iter = |
765 local_sync_runners_.begin(); | 765 local_sync_runners_.begin(); |
766 iter != local_sync_runners_.end(); ++iter) | 766 iter != local_sync_runners_.end(); ++iter) |
767 ((*iter)->*method)(); | 767 ((*iter)->*method)(); |
768 for (ScopedVector<SyncProcessRunner>::iterator iter = | 768 for (ScopedVector<SyncProcessRunner>::iterator iter = |
769 remote_sync_runners_.begin(); | 769 remote_sync_runners_.begin(); |
770 iter != remote_sync_runners_.end(); ++iter) | 770 iter != remote_sync_runners_.end(); ++iter) |
771 ((*iter)->*method)(); | 771 ((*iter)->*method)(); |
772 } | 772 } |
773 | 773 |
774 } // namespace sync_file_system | 774 } // namespace sync_file_system |
OLD | NEW |