OLD | NEW |
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 Loading... |
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 |
OLD | NEW |