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

Side by Side Diff: chrome/browser/sync/glue/android_invalidator_bridge.cc

Issue 12114012: Remove syncer::IncomingInvalidationSource (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove comment Created 7 years, 10 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/sync/glue/android_invalidator_bridge.h" 5 #include "chrome/browser/sync/glue/android_invalidator_bridge.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 19 matching lines...) Expand all
30 30
31 void InitializeOnSyncThread(); 31 void InitializeOnSyncThread();
32 void CleanupOnSyncThread(); 32 void CleanupOnSyncThread();
33 33
34 void RegisterHandler(syncer::InvalidationHandler* handler); 34 void RegisterHandler(syncer::InvalidationHandler* handler);
35 void UpdateRegisteredIds(syncer::InvalidationHandler* handler, 35 void UpdateRegisteredIds(syncer::InvalidationHandler* handler,
36 const syncer::ObjectIdSet& ids); 36 const syncer::ObjectIdSet& ids);
37 void UnregisterHandler(syncer::InvalidationHandler* handler); 37 void UnregisterHandler(syncer::InvalidationHandler* handler);
38 38
39 void EmitInvalidation( 39 void EmitInvalidation(
40 const syncer::ObjectIdInvalidationMap& invalidation_map, 40 const syncer::ObjectIdInvalidationMap& invalidation_map);
41 syncer::IncomingInvalidationSource invalidation_source);
42 41
43 bool IsHandlerRegisteredForTest(syncer::InvalidationHandler* handler) const; 42 bool IsHandlerRegisteredForTest(syncer::InvalidationHandler* handler) const;
44 syncer::ObjectIdSet GetRegisteredIdsForTest( 43 syncer::ObjectIdSet GetRegisteredIdsForTest(
45 syncer::InvalidationHandler* handler) const; 44 syncer::InvalidationHandler* handler) const;
46 45
47 private: 46 private:
48 friend class base::RefCountedThreadSafe<Core>; 47 friend class base::RefCountedThreadSafe<Core>;
49 48
50 // Destroyed on the UI thread or on |sync_task_runner_|. 49 // Destroyed on the UI thread or on |sync_task_runner_|.
51 ~Core(); 50 ~Core();
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 invalidator_registrar_->UpdateRegisteredIds(handler, ids); 89 invalidator_registrar_->UpdateRegisteredIds(handler, ids);
91 } 90 }
92 91
93 void AndroidInvalidatorBridge::Core::UnregisterHandler( 92 void AndroidInvalidatorBridge::Core::UnregisterHandler(
94 syncer::InvalidationHandler* handler) { 93 syncer::InvalidationHandler* handler) {
95 DCHECK(sync_task_runner_->RunsTasksOnCurrentThread()); 94 DCHECK(sync_task_runner_->RunsTasksOnCurrentThread());
96 invalidator_registrar_->UnregisterHandler(handler); 95 invalidator_registrar_->UnregisterHandler(handler);
97 } 96 }
98 97
99 void AndroidInvalidatorBridge::Core::EmitInvalidation( 98 void AndroidInvalidatorBridge::Core::EmitInvalidation(
100 const syncer::ObjectIdInvalidationMap& invalidation_map, 99 const syncer::ObjectIdInvalidationMap& invalidation_map) {
101 syncer::IncomingInvalidationSource invalidation_source) {
102 DCHECK(sync_task_runner_->RunsTasksOnCurrentThread()); 100 DCHECK(sync_task_runner_->RunsTasksOnCurrentThread());
103 const syncer::ObjectIdInvalidationMap& effective_invalidation_map = 101 const syncer::ObjectIdInvalidationMap& effective_invalidation_map =
104 invalidation_map.empty() ? 102 invalidation_map.empty() ?
105 ObjectIdSetToInvalidationMap( 103 ObjectIdSetToInvalidationMap(
106 invalidator_registrar_->GetAllRegisteredIds(), std::string()) : 104 invalidator_registrar_->GetAllRegisteredIds(), std::string()) :
107 invalidation_map; 105 invalidation_map;
108 106
109 invalidator_registrar_->DispatchInvalidationsToHandlers( 107 invalidator_registrar_->DispatchInvalidationsToHandlers(
110 effective_invalidation_map, invalidation_source); 108 effective_invalidation_map);
111 } 109 }
112 110
113 bool AndroidInvalidatorBridge::Core::IsHandlerRegisteredForTest( 111 bool AndroidInvalidatorBridge::Core::IsHandlerRegisteredForTest(
114 syncer::InvalidationHandler* handler) const { 112 syncer::InvalidationHandler* handler) const {
115 DCHECK(sync_task_runner_->RunsTasksOnCurrentThread()); 113 DCHECK(sync_task_runner_->RunsTasksOnCurrentThread());
116 return invalidator_registrar_->IsHandlerRegisteredForTest(handler); 114 return invalidator_registrar_->IsHandlerRegisteredForTest(handler);
117 } 115 }
118 116
119 syncer::ObjectIdSet 117 syncer::ObjectIdSet
120 AndroidInvalidatorBridge::Core::GetRegisteredIdsForTest( 118 AndroidInvalidatorBridge::Core::GetRegisteredIdsForTest(
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 return core_->GetRegisteredIdsForTest(handler); 189 return core_->GetRegisteredIdsForTest(handler);
192 } 190 }
193 191
194 void AndroidInvalidatorBridge::Observe( 192 void AndroidInvalidatorBridge::Observe(
195 int type, 193 int type,
196 const content::NotificationSource& source, 194 const content::NotificationSource& source,
197 const content::NotificationDetails& details) { 195 const content::NotificationDetails& details) {
198 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 196 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
199 DCHECK_EQ(type, chrome::NOTIFICATION_SYNC_REFRESH_REMOTE); 197 DCHECK_EQ(type, chrome::NOTIFICATION_SYNC_REFRESH_REMOTE);
200 198
201 syncer::IncomingInvalidationSource invalidation_source =
202 syncer::REMOTE_INVALIDATION;
203
204 // TODO(akalin): Use ObjectIdInvalidationMap here instead. We'll have to 199 // TODO(akalin): Use ObjectIdInvalidationMap here instead. We'll have to
205 // make sure all emitters of the relevant notifications also use 200 // make sure all emitters of the relevant notifications also use
206 // ObjectIdInvalidationMap. 201 // ObjectIdInvalidationMap.
207 content::Details<const syncer::ModelTypeInvalidationMap> 202 content::Details<const syncer::ModelTypeInvalidationMap>
208 state_details(details); 203 state_details(details);
209 const syncer::ModelTypeInvalidationMap& invalidation_map = 204 const syncer::ModelTypeInvalidationMap& invalidation_map =
210 *(state_details.ptr()); 205 *(state_details.ptr());
211 if (!sync_task_runner_->PostTask( 206 if (!sync_task_runner_->PostTask(
212 FROM_HERE, 207 FROM_HERE,
213 base::Bind(&Core::EmitInvalidation, 208 base::Bind(&Core::EmitInvalidation,
214 core_, 209 core_,
215 ModelTypeInvalidationMapToObjectIdInvalidationMap( 210 ModelTypeInvalidationMapToObjectIdInvalidationMap(
216 invalidation_map), 211 invalidation_map)))) {
217 invalidation_source))) {
218 NOTREACHED(); 212 NOTREACHED();
219 } 213 }
220 } 214 }
221 215
222 } // namespace browser_sync 216 } // namespace browser_sync
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698