Index: chrome/browser/drive/drive_notification_manager.cc |
diff --git a/chrome/browser/drive/drive_notification_manager.cc b/chrome/browser/drive/drive_notification_manager.cc |
index 1a4c82eb5962750028dd21cd8394b18c4a78c94a..ae94124e7bcc6545caa00099a9bbb232b7fd72ff 100644 |
--- a/chrome/browser/drive/drive_notification_manager.cc |
+++ b/chrome/browser/drive/drive_notification_manager.cc |
@@ -6,9 +6,9 @@ |
#include "base/metrics/histogram.h" |
#include "chrome/browser/drive/drive_notification_observer.h" |
+#include "chrome/browser/invalidation/invalidation_service.h" |
+#include "chrome/browser/invalidation/invalidation_service_factory.h" |
#include "chrome/browser/profiles/profile.h" |
-#include "chrome/browser/sync/profile_sync_service.h" |
-#include "chrome/browser/sync/profile_sync_service_factory.h" |
#include "google/cacheinvalidation/types.pb.h" |
namespace drive { |
@@ -42,15 +42,16 @@ DriveNotificationManager::~DriveNotificationManager() {} |
void DriveNotificationManager::Shutdown() { |
// Unregister for Drive notifications. |
- ProfileSyncService* profile_sync_service = |
- ProfileSyncServiceFactory::GetForProfile(profile_); |
- if (!profile_sync_service || !push_notification_registered_) { |
+ invalidation::InvalidationService* invalidation_service = |
+ invalidation::InvalidationServiceFactory::GetForProfile(profile_); |
+ if (!invalidation_service || !push_notification_registered_) { |
return; |
} |
- profile_sync_service->UpdateRegisteredInvalidationIds( |
- this, syncer::ObjectIdSet()); |
- profile_sync_service->UnregisterInvalidationHandler(this); |
+ // We unregister the handler without updating unregistering our IDs on |
+ // purpose. See the class comment on the InvalidationService interface for |
+ // more information. |
+ invalidation_service->UnregisterInvalidationHandler(this); |
} |
void DriveNotificationManager::OnInvalidatorStateChange( |
@@ -76,9 +77,10 @@ void DriveNotificationManager::OnIncomingInvalidation( |
// TODO(dcheng): Only acknowledge the invalidation once the fetch has |
// completed. http://crbug.com/156843 |
- ProfileSyncService* profile_sync_service = |
- ProfileSyncServiceFactory::GetForProfile(profile_); |
- profile_sync_service->AcknowledgeInvalidation( |
+ invalidation::InvalidationService* invalidation_service = |
+ invalidation::InvalidationServiceFactory::GetForProfile(profile_); |
+ DCHECK(invalidation_service); |
+ invalidation_service->AcknowledgeInvalidation( |
invalidation_map.begin()->first, |
invalidation_map.begin()->second.ack_handle); |
@@ -128,19 +130,19 @@ void DriveNotificationManager::NotifyObserversToUpdate( |
void DriveNotificationManager::RegisterDriveNotifications() { |
DCHECK(!push_notification_enabled_); |
- ProfileSyncService* profile_sync_service = |
- ProfileSyncServiceFactory::GetForProfile(profile_); |
- if (!profile_sync_service) |
+ invalidation::InvalidationService* invalidation_service = |
+ invalidation::InvalidationServiceFactory::GetForProfile(profile_); |
+ if (!invalidation_service) |
return; |
- profile_sync_service->RegisterInvalidationHandler(this); |
+ invalidation_service->RegisterInvalidationHandler(this); |
syncer::ObjectIdSet ids; |
ids.insert(invalidation::ObjectId( |
ipc::invalidation::ObjectSource::COSMO_CHANGELOG, |
kDriveInvalidationObjectId)); |
- profile_sync_service->UpdateRegisteredInvalidationIds(this, ids); |
+ invalidation_service->UpdateRegisteredInvalidationIds(this, ids); |
push_notification_registered_ = true; |
- OnInvalidatorStateChange(profile_sync_service->GetInvalidatorState()); |
+ OnInvalidatorStateChange(invalidation_service->GetInvalidatorState()); |
UMA_HISTOGRAM_BOOLEAN("Drive.PushNotificationRegistered", |
push_notification_registered_); |