| 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/profile_sync_service.h" | 5 #include "chrome/browser/sync/profile_sync_service.h" |
| 6 | 6 |
| 7 #include <cstddef> | 7 #include <cstddef> |
| 8 #include <map> | 8 #include <map> |
| 9 #include <set> | 9 #include <set> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 624 } | 624 } |
| 625 } | 625 } |
| 626 | 626 |
| 627 void ProfileSyncService::DisableForUser() { | 627 void ProfileSyncService::DisableForUser() { |
| 628 // Clear prefs (including SyncSetupHasCompleted) before shutting down so | 628 // Clear prefs (including SyncSetupHasCompleted) before shutting down so |
| 629 // PSS clients don't think we're set up while we're shutting down. | 629 // PSS clients don't think we're set up while we're shutting down. |
| 630 sync_prefs_.ClearPreferences(); | 630 sync_prefs_.ClearPreferences(); |
| 631 invalidator_storage_.Clear(); | 631 invalidator_storage_.Clear(); |
| 632 ClearUnrecoverableError(); | 632 ClearUnrecoverableError(); |
| 633 ShutdownImpl(true); | 633 ShutdownImpl(true); |
| 634 | |
| 635 // TODO(atwilson): Don't call SignOut() on *any* platform - move this into | |
| 636 // the UI layer if needed (sync activity should never result in the user | |
| 637 // being logged out of all chrome services). | |
| 638 if (!auto_start_enabled_ && !signin_->GetAuthenticatedUsername().empty()) | |
| 639 signin_->SignOut(); | |
| 640 | |
| 641 NotifyObservers(); | 634 NotifyObservers(); |
| 642 } | 635 } |
| 643 | 636 |
| 644 bool ProfileSyncService::HasSyncSetupCompleted() const { | 637 bool ProfileSyncService::HasSyncSetupCompleted() const { |
| 645 return sync_prefs_.HasSyncSetupCompleted(); | 638 return sync_prefs_.HasSyncSetupCompleted(); |
| 646 } | 639 } |
| 647 | 640 |
| 648 void ProfileSyncService::SetSyncSetupCompleted() { | 641 void ProfileSyncService::SetSyncSetupCompleted() { |
| 649 sync_prefs_.SetSyncSetupCompleted(); | 642 sync_prefs_.SetSyncSetupCompleted(); |
| 650 } | 643 } |
| (...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 937 true); | 930 true); |
| 938 } | 931 } |
| 939 | 932 |
| 940 current_experiments_ = experiments; | 933 current_experiments_ = experiments; |
| 941 } | 934 } |
| 942 | 935 |
| 943 void ProfileSyncService::UpdateAuthErrorState(const AuthError& error) { | 936 void ProfileSyncService::UpdateAuthErrorState(const AuthError& error) { |
| 944 is_auth_in_progress_ = false; | 937 is_auth_in_progress_ = false; |
| 945 last_auth_error_ = error; | 938 last_auth_error_ = error; |
| 946 | 939 |
| 947 // Fan the notification out to interested UI-thread components. | 940 // Fan the notification out to interested UI-thread components. Notify the |
| 948 NotifyObservers(); | 941 // SigninGlobalError first so it reflects the latest auth state before we |
| 942 // notify observers. |
| 949 if (signin()) | 943 if (signin()) |
| 950 signin()->signin_global_error()->AuthStatusChanged(); | 944 signin()->signin_global_error()->AuthStatusChanged(); |
| 945 NotifyObservers(); |
| 951 } | 946 } |
| 952 | 947 |
| 953 namespace { | 948 namespace { |
| 954 | 949 |
| 955 AuthError ConnectionStatusToAuthError( | 950 AuthError ConnectionStatusToAuthError( |
| 956 syncer::ConnectionStatus status) { | 951 syncer::ConnectionStatus status) { |
| 957 switch (status) { | 952 switch (status) { |
| 958 case syncer::CONNECTION_OK: | 953 case syncer::CONNECTION_OK: |
| 959 return AuthError::None(); | 954 return AuthError::None(); |
| 960 break; | 955 break; |
| (...skipping 1005 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1966 // See http://stackoverflow.com/questions/6224121/is-new-this-myclass-undefine
d-behaviour-after-directly-calling-the-destru. | 1961 // See http://stackoverflow.com/questions/6224121/is-new-this-myclass-undefine
d-behaviour-after-directly-calling-the-destru. |
| 1967 ProfileSyncService* old_this = this; | 1962 ProfileSyncService* old_this = this; |
| 1968 this->~ProfileSyncService(); | 1963 this->~ProfileSyncService(); |
| 1969 new(old_this) ProfileSyncService( | 1964 new(old_this) ProfileSyncService( |
| 1970 new ProfileSyncComponentsFactoryImpl(profile, | 1965 new ProfileSyncComponentsFactoryImpl(profile, |
| 1971 CommandLine::ForCurrentProcess()), | 1966 CommandLine::ForCurrentProcess()), |
| 1972 profile, | 1967 profile, |
| 1973 signin, | 1968 signin, |
| 1974 behavior); | 1969 behavior); |
| 1975 } | 1970 } |
| OLD | NEW |