Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(797)

Unified Diff: sync/internal_api/sync_manager_impl.cc

Issue 15580002: Make use of InvalidationService (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sync/internal_api/sync_manager_impl.h ('k') | sync/internal_api/sync_manager_impl_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sync/internal_api/sync_manager_impl.cc
diff --git a/sync/internal_api/sync_manager_impl.cc b/sync/internal_api/sync_manager_impl.cc
index 68f68f8e0781832847da0010cab7a5819ac56f56..7b0e5491330c7acf0c87cf804082889f4b42c408 100644
--- a/sync/internal_api/sync_manager_impl.cc
+++ b/sync/internal_api/sync_manager_impl.cc
@@ -349,7 +349,6 @@ void SyncManagerImpl::Init(
ExtensionsActivityMonitor* extensions_activity_monitor,
SyncManager::ChangeDelegate* change_delegate,
const SyncCredentials& credentials,
- scoped_ptr<Invalidator> invalidator,
const std::string& invalidator_client_id,
const std::string& restored_key_for_bootstrapping,
const std::string& restored_keystore_key_for_bootstrapping,
@@ -369,9 +368,6 @@ void SyncManagerImpl::Init(
change_delegate_ = change_delegate;
- invalidator_ = invalidator.Pass();
- invalidator_->RegisterHandler(this);
-
AddObserver(&js_sync_manager_observer_);
SetJsEventHandler(event_handler);
@@ -609,49 +605,11 @@ void SyncManagerImpl::UpdateCredentials(const SyncCredentials& credentials) {
if (!connection_manager_->SetAuthToken(credentials.sync_token))
return; // Auth token is known to be invalid, so exit early.
- invalidator_->UpdateCredentials(credentials.email, credentials.sync_token);
scheduler_->OnCredentialsUpdated();
// TODO(zea): pass the credential age to the debug info event listener.
}
-void SyncManagerImpl::UpdateEnabledTypes(ModelTypeSet enabled_types) {
- DCHECK(thread_checker_.CalledOnValidThread());
- DCHECK(initialized_);
- invalidator_->UpdateRegisteredIds(
- this,
- ModelTypeSetToObjectIdSet(enabled_types));
-}
-
-void SyncManagerImpl::RegisterInvalidationHandler(
- InvalidationHandler* handler) {
- DCHECK(thread_checker_.CalledOnValidThread());
- DCHECK(initialized_);
- invalidator_->RegisterHandler(handler);
-}
-
-void SyncManagerImpl::UpdateRegisteredInvalidationIds(
- InvalidationHandler* handler,
- const ObjectIdSet& ids) {
- DCHECK(thread_checker_.CalledOnValidThread());
- DCHECK(initialized_);
- invalidator_->UpdateRegisteredIds(handler, ids);
-}
-
-void SyncManagerImpl::UnregisterInvalidationHandler(
- InvalidationHandler* handler) {
- DCHECK(thread_checker_.CalledOnValidThread());
- DCHECK(initialized_);
- invalidator_->UnregisterHandler(handler);
-}
-
-void SyncManagerImpl::AcknowledgeInvalidation(
- const invalidation::ObjectId& id, const syncer::AckHandle& ack_handle) {
- DCHECK(thread_checker_.CalledOnValidThread());
- DCHECK(initialized_);
- invalidator_->Acknowledge(id, ack_handle);
-}
-
void SyncManagerImpl::AddObserver(SyncManager::Observer* observer) {
DCHECK(thread_checker_.CalledOnValidThread());
observers_.AddObserver(observer);
@@ -690,15 +648,10 @@ void SyncManagerImpl::ShutdownOnSyncThread() {
RemoveObserver(&debug_info_event_listener_);
- // |invalidator_| and |connection_manager_| may end up being NULL here in
- // tests (in synchronous initialization mode).
+ // |connection_manager_| may end up being NULL here in tests (in synchronous
+ // initialization mode).
//
// TODO(akalin): Fix this behavior.
-
- if (invalidator_)
- invalidator_->UnregisterHandler(this);
- invalidator_.reset();
-
if (connection_manager_)
connection_manager_->RemoveListener(this);
connection_manager_.reset();
@@ -988,20 +941,6 @@ void SyncManagerImpl::OnSyncEngineEvent(const SyncEngineEvent& event) {
DVLOG(1) << "Sending OnSyncCycleCompleted";
FOR_EACH_OBSERVER(SyncManager::Observer, observers_,
OnSyncCycleCompleted(event.snapshot));
-
- // This is here for tests, which are still using p2p notifications.
- bool is_notifiable_commit =
- (event.snapshot.model_neutral_state().num_successful_commits > 0);
- if (is_notifiable_commit) {
- if (invalidator_) {
- const ObjectIdInvalidationMap& invalidation_map =
- ModelTypeInvalidationMapToObjectIdInvalidationMap(
- event.snapshot.source().types);
- invalidator_->SendInvalidation(invalidation_map);
- } else {
- DVLOG(1) << "Not sending invalidation: invalidator_ is NULL";
- }
- }
}
if (event.what_happened == SyncEngineEvent::STOP_SYNCING_PERMANENTLY) {
@@ -1224,6 +1163,8 @@ void SyncManagerImpl::UpdateNotificationInfo(
}
void SyncManagerImpl::OnInvalidatorStateChange(InvalidatorState state) {
+ DCHECK(thread_checker_.CalledOnValidThread());
+
const std::string& state_str = InvalidatorStateToString(state);
invalidator_state_ = state;
DVLOG(1) << "Invalidator state changed to: " << state_str;
@@ -1232,12 +1173,6 @@ void SyncManagerImpl::OnInvalidatorStateChange(InvalidatorState state) {
allstatus_.SetNotificationsEnabled(notifications_enabled);
scheduler_->SetNotificationsEnabled(notifications_enabled);
- if (invalidator_state_ == syncer::INVALIDATION_CREDENTIALS_REJECTED) {
- // If the invalidator's credentials were rejected, that means that
- // our sync credentials are also bad, so invalidate those.
- connection_manager_->OnInvalidationCredentialsRejected();
- }
-
if (js_event_handler_.IsInitialized()) {
base::DictionaryValue details;
details.SetString("state", state_str);
@@ -1252,15 +1187,6 @@ void SyncManagerImpl::OnIncomingInvalidation(
const ObjectIdInvalidationMap& invalidation_map) {
DCHECK(thread_checker_.CalledOnValidThread());
- // TODO(dcheng): Acknowledge immediately for now. Fix this once the
- // invalidator doesn't repeatedly ping for unacknowledged invaliations, since
- // it conflicts with the sync scheduler's internal backoff algorithm.
- // See http://crbug.com/124149 for more information.
- for (ObjectIdInvalidationMap::const_iterator it = invalidation_map.begin();
- it != invalidation_map.end(); ++it) {
- invalidator_->Acknowledge(it->first, it->second.ack_handle);
- }
-
const ModelTypeInvalidationMap& type_invalidation_map =
ObjectIdInvalidationMapToModelTypeInvalidationMap(invalidation_map);
if (type_invalidation_map.empty()) {
« no previous file with comments | « sync/internal_api/sync_manager_impl.h ('k') | sync/internal_api/sync_manager_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698