Index: chrome/browser/sync/internal_api/sync_manager.cc |
diff --git a/chrome/browser/sync/internal_api/sync_manager.cc b/chrome/browser/sync/internal_api/sync_manager.cc |
index bc874c8a5644a47ce49db80be8d9e9db6a35b956..f9e72ff1a4994fd61ca29da6e16b7709331eae24 100644 |
--- a/chrome/browser/sync/internal_api/sync_manager.cc |
+++ b/chrome/browser/sync/internal_api/sync_manager.cc |
@@ -197,14 +197,6 @@ class SyncManager::SyncInternal |
bool setup_for_test_mode, |
UnrecoverableErrorHandler* unrecoverable_error_handler); |
- void CheckServerReachable() { |
- if (connection_manager()) { |
- connection_manager()->CheckServerReachable(); |
- } else { |
- NOTREACHED() << "Should be valid connection manager!"; |
- } |
- } |
- |
// Sign into sync with given credentials. |
// We do not verify the tokens given. After this call, the tokens are set |
// and the sync DB is open. True if successful, false if something |
@@ -214,6 +206,8 @@ class SyncManager::SyncInternal |
// Update tokens that we're using in Sync. Email must stay the same. |
void UpdateCredentials(const SyncCredentials& credentials); |
+ void KickScheduler(); |
+ |
// Called when the user disables or enables a sync type. |
void UpdateEnabledTypes(); |
@@ -387,10 +381,6 @@ class SyncManager::SyncInternal |
typedef base::Callback<JsArgList(const JsArgList&)> JsMessageHandler; |
typedef std::map<std::string, JsMessageHandler> JsMessageHandlerMap; |
- // Helper to call OnAuthError when no authentication credentials are |
- // available. |
- void RaiseAuthNeededEvent(); |
- |
// Internal callback of UpdateCryptographerAndNigoriCallback. |
void UpdateCryptographerAndNigoriCallback( |
const base::Callback<void(bool)>& done_callback, |
@@ -659,9 +649,6 @@ SyncManager::SyncManager(const std::string& name) |
SyncManager::Status::Status() |
: summary(INVALID), |
- authenticated(false), |
- server_up(false), |
- server_reachable(false), |
server_broken(false), |
notifications_enabled(false), |
notifications_received(0), |
@@ -724,11 +711,6 @@ bool SyncManager::Init( |
unrecoverable_error_handler); |
} |
-void SyncManager::CheckServerReachable() { |
- DCHECK(thread_checker_.CalledOnValidThread()); |
- data_->CheckServerReachable(); |
-} |
- |
void SyncManager::UpdateCredentials(const SyncCredentials& credentials) { |
DCHECK(thread_checker_.CalledOnValidThread()); |
data_->UpdateCredentials(credentials); |
@@ -1137,14 +1119,18 @@ void SyncManager::SyncInternal::UpdateCredentials( |
sync_notifier_->UpdateCredentials( |
credentials.email, credentials.sync_token); |
if (!setup_for_test_mode_ && initialized_) { |
- // Post a task so we don't block UpdateCredentials. |
+ // Kick the sync scheduler. It may have been waiting for that auth token. |
MessageLoop::current()->PostTask( |
- FROM_HERE, base::Bind(&SyncInternal::CheckServerReachable, |
- weak_ptr_factory_.GetWeakPtr())); |
+ FROM_HERE, base::Bind(&SyncInternal::KickScheduler, |
+ weak_ptr_factory_.GetWeakPtr())); |
} |
} |
} |
+void SyncManager::SyncInternal::KickScheduler() { |
+ scheduler()->TryToConnect(); |
+} |
+ |
void SyncManager::SyncInternal::UpdateEnabledTypes() { |
DCHECK(thread_checker_.CalledOnValidThread()); |
ModelSafeRoutingInfo routes; |
@@ -1177,11 +1163,6 @@ void SyncManager::SyncInternal::MaybeSetSyncTabsInNigoriNode( |
} |
} |
-void SyncManager::SyncInternal::RaiseAuthNeededEvent() { |
- FOR_EACH_OBSERVER(SyncManager::Observer, observers_, |
- OnAuthError(AuthError(AuthError::INVALID_GAIA_CREDENTIALS))); |
-} |
- |
void SyncManager::SyncInternal::SetPassphrase( |
const std::string& passphrase, bool is_explicit) { |
// We do not accept empty passphrases. |
@@ -1522,13 +1503,12 @@ void SyncManager::SyncInternal::OnIPAddressChanged() { |
void SyncManager::SyncInternal::OnIPAddressChangedImpl() { |
DCHECK(thread_checker_.CalledOnValidThread()); |
- CheckServerReachable(); |
+ scheduler()->TryToConnect(); |
} |
void SyncManager::SyncInternal::OnServerConnectionEvent( |
const ServerConnectionEvent& event) { |
DCHECK(thread_checker_.CalledOnValidThread()); |
- allstatus_.HandleServerConnectionEvent(event); |
if (event.connection_code == |
browser_sync::HttpResponse::SERVER_CONNECTION_OK) { |
FOR_EACH_OBSERVER(SyncManager::Observer, observers_, |