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

Side by Side Diff: chrome/browser/invalidation/invalidation_service_android.cc

Issue 23643002: Enable invalidations for arbitrary objects on Android. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/invalidation/invalidation_service_android.h" 5 #include "chrome/browser/invalidation/invalidation_service_android.h"
6 6
7 #include "chrome/browser/chrome_notification_types.h" 7 #include "chrome/browser/chrome_notification_types.h"
8 #include "chrome/browser/invalidation/invalidation_controller_android.h"
8 #include "content/public/browser/notification_service.h" 9 #include "content/public/browser/notification_service.h"
9 10
10 namespace invalidation { 11 namespace invalidation {
11 12
12 InvalidationServiceAndroid::InvalidationServiceAndroid(Profile* profile) 13 InvalidationServiceAndroid::InvalidationServiceAndroid(
13 : invalidator_state_(syncer::INVALIDATIONS_ENABLED) { 14 Profile* profile,
15 InvalidationControllerAndroid* invalidation_controller)
16 : invalidator_state_(syncer::INVALIDATIONS_ENABLED),
17 invalidation_controller_(invalidation_controller) {
14 DCHECK(CalledOnValidThread()); 18 DCHECK(CalledOnValidThread());
19 DCHECK(invalidation_controller);
15 registrar_.Add(this, chrome::NOTIFICATION_SYNC_REFRESH_REMOTE, 20 registrar_.Add(this, chrome::NOTIFICATION_SYNC_REFRESH_REMOTE,
16 content::Source<Profile>(profile)); 21 content::Source<Profile>(profile));
17 } 22 }
18 23
19 InvalidationServiceAndroid::~InvalidationServiceAndroid() { } 24 InvalidationServiceAndroid::~InvalidationServiceAndroid() { }
20 25
21 void InvalidationServiceAndroid::RegisterInvalidationHandler( 26 void InvalidationServiceAndroid::RegisterInvalidationHandler(
22 syncer::InvalidationHandler* handler) { 27 syncer::InvalidationHandler* handler) {
23 DCHECK(CalledOnValidThread()); 28 DCHECK(CalledOnValidThread());
24 invalidator_registrar_.RegisterHandler(handler); 29 invalidator_registrar_.RegisterHandler(handler);
25 } 30 }
26 31
27 void InvalidationServiceAndroid::UpdateRegisteredInvalidationIds( 32 void InvalidationServiceAndroid::UpdateRegisteredInvalidationIds(
28 syncer::InvalidationHandler* handler, 33 syncer::InvalidationHandler* handler,
29 const syncer::ObjectIdSet& ids) { 34 const syncer::ObjectIdSet& ids) {
30 DCHECK(CalledOnValidThread()); 35 DCHECK(CalledOnValidThread());
31 invalidator_registrar_.UpdateRegisteredIds(handler, ids); 36 invalidator_registrar_.UpdateRegisteredIds(handler, ids);
37 invalidation_controller_->SetRegisteredObjectIds(
38 invalidator_registrar_.GetAllRegisteredIds());
32 } 39 }
33 40
34 void InvalidationServiceAndroid::UnregisterInvalidationHandler( 41 void InvalidationServiceAndroid::UnregisterInvalidationHandler(
35 syncer::InvalidationHandler* handler) { 42 syncer::InvalidationHandler* handler) {
36 DCHECK(CalledOnValidThread()); 43 DCHECK(CalledOnValidThread());
37 invalidator_registrar_.UnregisterHandler(handler); 44 invalidator_registrar_.UnregisterHandler(handler);
38 } 45 }
39 46
40 void InvalidationServiceAndroid::AcknowledgeInvalidation( 47 void InvalidationServiceAndroid::AcknowledgeInvalidation(
41 const invalidation::ObjectId& id, 48 const invalidation::ObjectId& id,
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 } 89 }
83 90
84 void InvalidationServiceAndroid::TriggerStateChangeForTest( 91 void InvalidationServiceAndroid::TriggerStateChangeForTest(
85 syncer::InvalidatorState state) { 92 syncer::InvalidatorState state) {
86 DCHECK(CalledOnValidThread()); 93 DCHECK(CalledOnValidThread());
87 invalidator_state_ = state; 94 invalidator_state_ = state;
88 invalidator_registrar_.UpdateInvalidatorState(invalidator_state_); 95 invalidator_registrar_.UpdateInvalidatorState(invalidator_state_);
89 } 96 }
90 97
91 } // namespace invalidation 98 } // namespace invalidation
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698