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

Unified Diff: chrome/browser/extensions/api/push_messaging/push_messaging_api.cc

Issue 327243003: Introduce ProfileInvalidationProvider wrapper for InvalidationService (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix clang compilation. Created 6 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
Index: chrome/browser/extensions/api/push_messaging/push_messaging_api.cc
diff --git a/chrome/browser/extensions/api/push_messaging/push_messaging_api.cc b/chrome/browser/extensions/api/push_messaging/push_messaging_api.cc
index bd725c67a26b099328374d3bdb052913b11caa08..8a47baa42632d5eb618591ccc8df4899dd6a3080 100644
--- a/chrome/browser/extensions/api/push_messaging/push_messaging_api.cc
+++ b/chrome/browser/extensions/api/push_messaging/push_messaging_api.cc
@@ -16,7 +16,8 @@
#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/token_cache/token_cache_service.h"
#include "chrome/browser/extensions/token_cache/token_cache_service_factory.h"
-#include "chrome/browser/invalidation/invalidation_service_factory.h"
+#include "chrome/browser/invalidation/profile_invalidation_provider.h"
+#include "chrome/browser/invalidation/profile_invalidation_provider_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/signin/profile_oauth2_token_service_factory.h"
#include "chrome/browser/signin/signin_manager_factory.h"
@@ -104,16 +105,17 @@ bool PushMessagingGetChannelIdFunction::RunAsync() {
// Balanced in ReportResult()
AddRef();
- invalidation::InvalidationService* invalidation_service =
- invalidation::InvalidationServiceFactory::GetForProfile(GetProfile());
- if (!invalidation_service) {
+ invalidation::ProfileInvalidationProvider* invalidation_provider =
+ invalidation::ProfileInvalidationProviderFactory::GetForProfile(
+ GetProfile());
+ if (!invalidation_provider) {
error_ = kAPINotAvailableForUser;
ReportResult(std::string(), error_);
return false;
}
IdentityProvider* identity_provider =
- invalidation_service->GetIdentityProvider();
+ invalidation_provider->GetInvalidationService()->GetIdentityProvider();
if (!identity_provider->GetTokenService()->RefreshTokenIsAvailable(
identity_provider->GetActiveAccountId())) {
if (interactive_ && identity_provider->RequestLogin()) {
@@ -133,11 +135,12 @@ bool PushMessagingGetChannelIdFunction::RunAsync() {
}
void PushMessagingGetChannelIdFunction::StartAccessTokenFetch() {
- invalidation::InvalidationService* invalidation_service =
- invalidation::InvalidationServiceFactory::GetForProfile(GetProfile());
- CHECK(invalidation_service);
+ invalidation::ProfileInvalidationProvider* invalidation_provider =
+ invalidation::ProfileInvalidationProviderFactory::GetForProfile(
+ GetProfile());
+ CHECK(invalidation_provider);
IdentityProvider* identity_provider =
- invalidation_service->GetIdentityProvider();
+ invalidation_provider->GetInvalidationService()->GetIdentityProvider();
std::vector<std::string> scope_vector =
extensions::ObfuscatedGaiaIdFetcher::GetScopes();
@@ -149,10 +152,11 @@ void PushMessagingGetChannelIdFunction::StartAccessTokenFetch() {
void PushMessagingGetChannelIdFunction::OnRefreshTokenAvailable(
const std::string& account_id) {
- invalidation::InvalidationService* invalidation_service =
- invalidation::InvalidationServiceFactory::GetForProfile(GetProfile());
- CHECK(invalidation_service);
- invalidation_service->GetIdentityProvider()->
+ invalidation::ProfileInvalidationProvider* invalidation_provider =
+ invalidation::ProfileInvalidationProviderFactory::GetForProfile(
+ GetProfile());
+ CHECK(invalidation_provider);
+ invalidation_provider->GetInvalidationService()->GetIdentityProvider()->
RemoveActiveAccountRefreshTokenObserver(this);
DVLOG(2) << "Newly logged in: " << GetProfile()->GetProfileName();
StartAccessTokenFetch();
@@ -271,11 +275,12 @@ void PushMessagingGetChannelIdFunction::OnObfuscatedGaiaIdFetchFailure(
case GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS:
case GoogleServiceAuthError::ACCOUNT_DELETED:
case GoogleServiceAuthError::ACCOUNT_DISABLED: {
- invalidation::InvalidationService* invalidation_service =
- invalidation::InvalidationServiceFactory::GetForProfile(GetProfile());
- CHECK(invalidation_service);
- if (!interactive_ ||
- !invalidation_service->GetIdentityProvider()->RequestLogin()) {
+ invalidation::ProfileInvalidationProvider* invalidation_provider =
+ invalidation::ProfileInvalidationProviderFactory::GetForProfile(
+ GetProfile());
+ CHECK(invalidation_provider);
+ if (!interactive_ || !invalidation_provider->GetInvalidationService()->
+ GetIdentityProvider()->RequestLogin()) {
ReportResult(std::string(), error_text);
}
return;
@@ -319,16 +324,17 @@ PushMessagingAPI::GetFactoryInstance() {
}
bool PushMessagingAPI::InitEventRouterAndHandler() {
- invalidation::InvalidationService* invalidation_service =
- invalidation::InvalidationServiceFactory::GetForProfile(profile_);
- if (!invalidation_service)
+ invalidation::ProfileInvalidationProvider* invalidation_provider =
+ invalidation::ProfileInvalidationProviderFactory::GetForProfile(profile_);
+ if (!invalidation_provider)
return false;
if (!event_router_)
event_router_.reset(new PushMessagingEventRouter(profile_));
if (!handler_) {
- handler_.reset(new PushMessagingInvalidationHandler(invalidation_service,
- event_router_.get()));
+ handler_.reset(new PushMessagingInvalidationHandler(
+ invalidation_provider->GetInvalidationService(),
+ event_router_.get()));
}
return true;
@@ -383,7 +389,7 @@ template <>
void
BrowserContextKeyedAPIFactory<PushMessagingAPI>::DeclareFactoryDependencies() {
DependsOn(ExtensionsBrowserClient::Get()->GetExtensionSystemFactory());
- DependsOn(invalidation::InvalidationServiceFactory::GetInstance());
+ DependsOn(invalidation::ProfileInvalidationProviderFactory::GetInstance());
}
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698