|
|
Separate local and remote sync invalidations
The old design used ChromeSyncNotificationsBridge to register for both
NOTIFICATION_SYNC_REFRESH_LOCAL and NOTIFICATION_SYNC_REFRESH_REMOTE.
The first of these is issued when some component decides that the syncer
ought to perform an unsolicited GetUpdates for some type, while the
second is an Android-specific mechanism for receiving remote
invalidations. In either case, the ChromeSyncNotificationsBridge would
forward the invalidations to the SyncManager through the
BridgedInvalidator as though they had come from any other invalidator.
In this new design, the local and remote invalidations sources are kept
distinct. The SyncBackendHost is now responsible for listening to and
forwarding NOTIFICATION_SYNC_REFRESH_LOCAL. Note that there is no
longer any type-specific filtering performed as we receive
notifications; it will be up to the SyncManager to ignore notifications
for disbaled types.
The successor to ChromeSyncNotificationsBridge,
AndroidInvalidatorBridge, is responsible only for forwarding
NOTIFICATION_SYNC_REFRESH_REMOTE notificaitons. It is passed to the
SyncManager only if OS_ANDROID is defined.
Since there is only one source of remote invalidations, the
BridgedInvalidator would seem to be no longer necessary. Unfortunately,
this is not the case. The BridgedInvalidator was useful in part because
it wrapped the UI-thread-owned ChromeSyncNotificationsBridge without
owning it, so the SyncManager's destruction would not affect it. This
wrapping functionality is still needed by the AndroidInvalidatorBridge.
The BridgedInvalidator has been modified to only wrap a single
AndroidInvalidatorBridge, and renamed to AndroidInvalidatorBridgeProxy.
BUG= 124143
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=179546
Total comments: 4
Total comments: 1
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+465 lines, -978 lines) |
Patch |
 |
A + |
chrome/browser/sync/glue/android_invalidator_bridge.h
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+26 lines, -16 lines |
0 comments
|
Download
|
 |
A + |
chrome/browser/sync/glue/android_invalidator_bridge.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
5 chunks |
+36 lines, -32 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/sync/glue/android_invalidator_bridge_proxy.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+49 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/sync/glue/android_invalidator_bridge_proxy.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+57 lines, -0 lines |
0 comments
|
Download
|
 |
A |
chrome/browser/sync/glue/android_invalidator_bridge_proxy_unittest.cc
|
View
|
1
|
1 chunk |
+94 lines, -0 lines |
0 comments
|
Download
|
 |
A + |
chrome/browser/sync/glue/android_invalidator_bridge_unittest.cc
|
View
|
1
|
7 chunks |
+11 lines, -41 lines |
0 comments
|
Download
|
 |
D |
chrome/browser/sync/glue/bridged_invalidator.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+0 lines, -61 lines |
0 comments
|
Download
|
 |
D |
chrome/browser/sync/glue/bridged_invalidator.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+0 lines, -70 lines |
0 comments
|
Download
|
 |
D |
chrome/browser/sync/glue/bridged_invalidator_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+0 lines, -181 lines |
0 comments
|
Download
|
 |
D |
chrome/browser/sync/glue/chrome_sync_notification_bridge.h
|
View
|
2
|
1 chunk |
+0 lines, -74 lines |
0 comments
|
Download
|
 |
D |
chrome/browser/sync/glue/chrome_sync_notification_bridge.cc
|
View
|
2
|
1 chunk |
+0 lines, -218 lines |
0 comments
|
Download
|
 |
D |
chrome/browser/sync/glue/chrome_sync_notification_bridge_unittest.cc
|
View
|
1
|
1 chunk |
+0 lines, -227 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/sync/glue/sync_backend_host.h
|
View
|
1
2
3
4
5
6
7
8
9
|
7 chunks |
+17 lines, -7 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/sync/glue/sync_backend_host.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
18 chunks |
+54 lines, -34 lines |
0 comments
|
Download
|
 |
M |
chrome/browser/sync/glue/sync_backend_host_unittest.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+56 lines, -0 lines |
0 comments
|
Download
|
 |
M |
chrome/chrome_browser.gypi
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+4 lines, -4 lines |
0 comments
|
Download
|
 |
M |
chrome/chrome_tests_unit.gypi
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
sync/internal_api/public/sync_manager.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
sync/internal_api/public/test/fake_sync_manager.h
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+7 lines, -0 lines |
0 comments
|
Download
|
 |
M |
sync/internal_api/sync_manager_impl.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
sync/internal_api/sync_manager_impl.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+36 lines, -10 lines |
0 comments
|
Download
|
 |
M |
sync/internal_api/test/fake_sync_manager.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
2 chunks |
+8 lines, -0 lines |
0 comments
|
Download
|
 |
M |
sync/notifier/invalidator_factory.cc
|
View
|
1
2
3
4
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
Total messages: 13 (0 generated)
|