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

Unified Diff: chrome/service/cloud_print/cloud_print_proxy_backend.cc

Issue 10545170: [Sync] Propagate XMPP auth errors to SyncNotifierObservers (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix deps, win compile error Created 8 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/service/cloud_print/cloud_print_proxy_backend.cc
diff --git a/chrome/service/cloud_print/cloud_print_proxy_backend.cc b/chrome/service/cloud_print/cloud_print_proxy_backend.cc
index e14e33b3a584abe4ee3c9c49de4389f8a4b49449..4b2cfa6f9ab2403d7ea1c98a49a6ae56134386e1 100644
--- a/chrome/service/cloud_print/cloud_print_proxy_backend.cc
+++ b/chrome/service/cloud_print/cloud_print_proxy_backend.cc
@@ -88,8 +88,9 @@ class CloudPrintProxyBackend::Core
virtual void OnAuthFailed() OVERRIDE;
// notifier::PushClientObserver implementation.
- virtual void OnNotificationStateChange(
- bool notifications_enabled) OVERRIDE;
+ virtual void OnNotificationsEnabled() OVERRIDE;
+ virtual void OnNotificationsDisabled(
+ notifier::NotificationsDisabledReason reason) OVERRIDE;
virtual void OnIncomingNotification(
const notifier::Notification& notification) OVERRIDE;
@@ -500,27 +501,29 @@ void CloudPrintProxyBackend::Core::NotifyUnregisterPrinters(
backend_->frontend_->OnUnregisterPrinters(auth_token, printer_ids);
}
-void CloudPrintProxyBackend::Core::OnNotificationStateChange(
- bool notification_enabled) {
+void CloudPrintProxyBackend::Core::OnNotificationsEnabled() {
DCHECK(MessageLoop::current() == backend_->core_thread_.message_loop());
- notifications_enabled_ = notification_enabled;
- if (notifications_enabled_) {
- notifications_enabled_since_ = base::TimeTicks::Now();
- VLOG(1) << "Notifications for connector " << proxy_id_
- << " were enabled at "
- << notifications_enabled_since_.ToInternalValue();
- } else {
- LOG(ERROR) << "Notifications for connector " << proxy_id_ << " disabled.";
- notifications_enabled_since_ = base::TimeTicks();
- }
- // A state change means one of two cases.
- // Case 1: We just lost notifications. This this case we want to schedule a
- // job poll if enable_job_poll_ is true.
- // Case 2: Notifications just got re-enabled. In this case we want to schedule
+ notifications_enabled_ = true;
+ notifications_enabled_since_ = base::TimeTicks::Now();
+ VLOG(1) << "Notifications for connector " << proxy_id_
+ << " were enabled at "
+ << notifications_enabled_since_.ToInternalValue();
+ // Notifications just got re-enabled. In this case we want to schedule
// a poll once for jobs we might have missed when we were dark.
// Note that ScheduleJobPoll will not schedule again if a job poll task is
// already scheduled.
- if (enable_job_poll_ || notifications_enabled_)
+ ScheduleJobPoll();
+}
+
+void CloudPrintProxyBackend::Core::OnNotificationsDisabled(
+ notifier::NotificationsDisabledReason reason) {
+ DCHECK(MessageLoop::current() == backend_->core_thread_.message_loop());
+ notifications_enabled_ = false;
+ LOG(ERROR) << "Notifications for connector " << proxy_id_ << " disabled.";
+ notifications_enabled_since_ = base::TimeTicks();
+ // We just lost notifications. This this case we want to schedule a
+ // job poll if enable_job_poll_ is true.
+ if (enable_job_poll_)
ScheduleJobPoll();
}

Powered by Google App Engine
This is Rietveld 408576698