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 "components/browser_sync/profile_sync_service.h" | 5 #include "components/browser_sync/profile_sync_service.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <cstddef> | 9 #include <cstddef> |
10 #include <map> | 10 #include <map> |
(...skipping 697 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
708 } else { | 708 } else { |
709 startup_controller_->TryStart(); | 709 startup_controller_->TryStart(); |
710 } | 710 } |
711 } | 711 } |
712 | 712 |
713 void ProfileSyncService::Shutdown() { | 713 void ProfileSyncService::Shutdown() { |
714 DCHECK(thread_checker_.CalledOnValidThread()); | 714 DCHECK(thread_checker_.CalledOnValidThread()); |
715 UnregisterAuthNotifications(); | 715 UnregisterAuthNotifications(); |
716 | 716 |
717 ShutdownImpl(syncer::BROWSER_SHUTDOWN); | 717 ShutdownImpl(syncer::BROWSER_SHUTDOWN); |
| 718 NotifyShutdown(); |
718 if (sync_error_controller_) { | 719 if (sync_error_controller_) { |
719 // Destroy the SyncErrorController when the service shuts down for good. | 720 // Destroy the SyncErrorController when the service shuts down for good. |
720 RemoveObserver(sync_error_controller_.get()); | 721 RemoveObserver(sync_error_controller_.get()); |
721 sync_error_controller_.reset(); | 722 sync_error_controller_.reset(); |
722 } | 723 } |
723 | 724 |
724 if (sync_thread_) | 725 if (sync_thread_) |
725 sync_thread_->Stop(); | 726 sync_thread_->Stop(); |
726 } | 727 } |
727 | 728 |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
834 ReconfigureDatatypeManager(); | 835 ReconfigureDatatypeManager(); |
835 } | 836 } |
836 } | 837 } |
837 | 838 |
838 void ProfileSyncService::UpdateLastSyncedTime() { | 839 void ProfileSyncService::UpdateLastSyncedTime() { |
839 sync_prefs_.SetLastSyncedTime(base::Time::Now()); | 840 sync_prefs_.SetLastSyncedTime(base::Time::Now()); |
840 } | 841 } |
841 | 842 |
842 void ProfileSyncService::NotifyObservers() { | 843 void ProfileSyncService::NotifyObservers() { |
843 for (auto& observer : observers_) | 844 for (auto& observer : observers_) |
844 observer.OnStateChanged(); | 845 observer.OnStateChanged(this); |
845 } | 846 } |
846 | 847 |
847 void ProfileSyncService::NotifySyncCycleCompleted() { | 848 void ProfileSyncService::NotifySyncCycleCompleted() { |
848 for (auto& observer : observers_) | 849 for (auto& observer : observers_) |
849 observer.OnSyncCycleCompleted(); | 850 observer.OnSyncCycleCompleted(this); |
850 } | 851 } |
851 | 852 |
852 void ProfileSyncService::NotifyForeignSessionUpdated() { | 853 void ProfileSyncService::NotifyForeignSessionUpdated() { |
853 for (auto& observer : observers_) | 854 for (auto& observer : observers_) |
854 observer.OnForeignSessionUpdated(); | 855 observer.OnForeignSessionUpdated(this); |
| 856 } |
| 857 |
| 858 void ProfileSyncService::NotifyShutdown() { |
| 859 for (auto& observer : observers_) |
| 860 observer.OnSyncShutdown(this); |
855 } | 861 } |
856 | 862 |
857 void ProfileSyncService::ClearStaleErrors() { | 863 void ProfileSyncService::ClearStaleErrors() { |
858 ClearUnrecoverableError(); | 864 ClearUnrecoverableError(); |
859 last_actionable_error_ = SyncProtocolError(); | 865 last_actionable_error_ = SyncProtocolError(); |
860 // Clear the data type errors as well. | 866 // Clear the data type errors as well. |
861 if (data_type_manager_.get()) | 867 if (data_type_manager_.get()) |
862 data_type_manager_->ResetDataTypeErrors(); | 868 data_type_manager_->ResetDataTypeErrors(); |
863 } | 869 } |
864 | 870 |
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1366 UMA_HISTOGRAM_LONG_TIMES("Sync.ServiceInitialConfigureTime", delta); | 1372 UMA_HISTOGRAM_LONG_TIMES("Sync.ServiceInitialConfigureTime", delta); |
1367 } else { | 1373 } else { |
1368 UMA_HISTOGRAM_LONG_TIMES("Sync.ServiceSubsequentConfigureTime", delta); | 1374 UMA_HISTOGRAM_LONG_TIMES("Sync.ServiceSubsequentConfigureTime", delta); |
1369 } | 1375 } |
1370 } | 1376 } |
1371 sync_configure_start_time_ = base::Time(); | 1377 sync_configure_start_time_ = base::Time(); |
1372 } | 1378 } |
1373 | 1379 |
1374 // Notify listeners that configuration is done. | 1380 // Notify listeners that configuration is done. |
1375 for (auto& observer : observers_) | 1381 for (auto& observer : observers_) |
1376 observer.OnSyncConfigurationCompleted(); | 1382 observer.OnSyncConfigurationCompleted(this); |
1377 | 1383 |
1378 DVLOG(1) << "PSS OnConfigureDone called with status: " << configure_status_; | 1384 DVLOG(1) << "PSS OnConfigureDone called with status: " << configure_status_; |
1379 // The possible status values: | 1385 // The possible status values: |
1380 // ABORT - Configuration was aborted. This is not an error, if | 1386 // ABORT - Configuration was aborted. This is not an error, if |
1381 // initiated by user. | 1387 // initiated by user. |
1382 // OK - Some or all types succeeded. | 1388 // OK - Some or all types succeeded. |
1383 // Everything else is an UnrecoverableError. So treat it as such. | 1389 // Everything else is an UnrecoverableError. So treat it as such. |
1384 | 1390 |
1385 // First handle the abort case. | 1391 // First handle the abort case. |
1386 if (configure_status_ == DataTypeManager::ABORTED && | 1392 if (configure_status_ == DataTypeManager::ABORTED && |
(...skipping 1248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2635 | 2641 |
2636 DCHECK(startup_controller_->IsSetupInProgress()); | 2642 DCHECK(startup_controller_->IsSetupInProgress()); |
2637 startup_controller_->SetSetupInProgress(false); | 2643 startup_controller_->SetSetupInProgress(false); |
2638 | 2644 |
2639 if (IsEngineInitialized()) | 2645 if (IsEngineInitialized()) |
2640 ReconfigureDatatypeManager(); | 2646 ReconfigureDatatypeManager(); |
2641 NotifyObservers(); | 2647 NotifyObservers(); |
2642 } | 2648 } |
2643 | 2649 |
2644 } // namespace browser_sync | 2650 } // namespace browser_sync |
OLD | NEW |