Index: chrome/browser/invalidation/invalidation_service_factory.cc |
diff --git a/chrome/browser/invalidation/invalidation_service_factory.cc b/chrome/browser/invalidation/invalidation_service_factory.cc |
index 0b62bad48c5e4cd053dcdd474294f55602807fea..4d289318496b03b08f15f5844346d1c5a4ff83f3 100644 |
--- a/chrome/browser/invalidation/invalidation_service_factory.cc |
+++ b/chrome/browser/invalidation/invalidation_service_factory.cc |
@@ -12,6 +12,8 @@ |
#include "chrome/browser/invalidation/invalidation_service_android.h" |
#include "chrome/browser/invalidation/invalidator_storage.h" |
#include "chrome/browser/invalidation/ticl_invalidation_service.h" |
+#include "chrome/browser/invalidation/ticl_invalidation_service_profile_settings_provider.h" |
+#include "chrome/browser/invalidation/ticl_invalidation_service_settings_provider.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/services/gcm/gcm_profile_service.h" |
#include "chrome/browser/services/gcm/gcm_profile_service_factory.h" |
@@ -58,6 +60,12 @@ InvalidationService* InvalidationServiceFactory::GetForProfile( |
return NULL; |
} |
#endif |
+ if (profile->IsManaged()) { |
dcheng
2014/04/24 18:26:54
Nit: Not sure why this is needed in this CL. Is th
bartfab (slow)
2014/04/24 19:14:48
This was previously handled by TiclInvalidationSer
|
+ // Managed profiles do not have GAIA credentials and do not support |
+ // invalidation. |
+ return NULL; |
+ } |
+ |
return static_cast<InvalidationService*>( |
GetInstance()->GetServiceForBrowserContext(profile, true)); |
} |
@@ -121,9 +129,10 @@ KeyedService* InvalidationServiceFactory::BuildServiceInstanceFor( |
TiclInvalidationService* service = new TiclInvalidationService( |
identity_provider.Pass(), |
+ scoped_ptr<TiclInvalidationServiceSettingsProvider>( |
+ new TiclInvalidationServiceProfileSettingsProvider(profile)), |
gcm::GCMProfileServiceFactory::GetForProfile(profile), |
- profile->GetRequestContext(), |
- profile); |
+ profile->GetRequestContext()); |
service->Init(scoped_ptr<syncer::InvalidationStateTracker>( |
new InvalidatorStorage(profile->GetPrefs()))); |
return service; |