| 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_,
|
|
|