summaryrefslogtreecommitdiffstats
path: root/chrome/browser/invalidation/invalidation_service_android.h
diff options
context:
space:
mode:
authorrlarocque@chromium.org <rlarocque@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-25 01:47:46 +0000
committerrlarocque@chromium.org <rlarocque@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-25 01:47:46 +0000
commit1691f004283eca700aa101b784bdec5a8c3b24cb (patch)
tree51686e63df183d4ea60fb38be4400db97fedbf18 /chrome/browser/invalidation/invalidation_service_android.h
parent9f9309fbb4f1ff34330a9ba3879011cad09f05e5 (diff)
downloadchromium_src-1691f004283eca700aa101b784bdec5a8c3b24cb.zip
chromium_src-1691f004283eca700aa101b784bdec5a8c3b24cb.tar.gz
chromium_src-1691f004283eca700aa101b784bdec5a8c3b24cb.tar.bz2
Revert 208315 "Make use of InvalidationService"
> Make use of InvalidationService > > The InvalidationService was introduced r199520. That commit added the > InvalidationService interface and several implementations of it, but > made no use of the new code. This commit builds on that work. > > Up until now, TICL invalidations were handled on the sync thread. The > related objects were instantiated and owned by the SyncBackendHost and > SyncManager. All requests to update the set of object registrations had > to be passed to the sync thread. Components that wanted to receive > invalidations but were not part of sync had to route their communication > with the invalidations server through ProfileSyncService to get to the > sync thread. Things were a bit different on Android, but the system > still tried to pretend that invalidations were owned by the sync thread. > > The new InvalidationService implementation is a ProfileKeyedService that > is mostly independent from sync. It still relies on sync to manage sign > in and fetch the appropriate auth tokens. However, it's now much easier > for components outside of sync to communication with the invalidations > server. > > The new system allows us to remove a lot of invalidations-related code > from the ProfileSyncService, SyncBackendHost and SyncManager. Sync is > now just one of many clients of the InvalidationService. The > SyncBackendHost is responsible for forwarding messages back and forth > between the InvalidationService and the sync thread. > > TBR=sky,erg > BUG=124137 > > Review URL: https://chromiumcodereview.appspot.com/15580002 TBR=rlarocque@chromium.org Review URL: https://codereview.chromium.org/17610004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208347 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/invalidation/invalidation_service_android.h')
-rw-r--r--chrome/browser/invalidation/invalidation_service_android.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/chrome/browser/invalidation/invalidation_service_android.h b/chrome/browser/invalidation/invalidation_service_android.h
index 244b1e7..6daef6a 100644
--- a/chrome/browser/invalidation/invalidation_service_android.h
+++ b/chrome/browser/invalidation/invalidation_service_android.h
@@ -8,7 +8,7 @@
#include "base/basictypes.h"
#include "base/compiler_specific.h"
#include "base/threading/non_thread_safe.h"
-#include "chrome/browser/invalidation/invalidation_service.h"
+#include "chrome/browser/invalidation/invalidation_frontend.h"
#include "components/browser_context_keyed_service/browser_context_keyed_service.h"
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_registrar.h"
@@ -24,7 +24,8 @@ namespace invalidation {
// around Android's invalidations service.
class InvalidationServiceAndroid
: public base::NonThreadSafe,
- public InvalidationService,
+ public BrowserContextKeyedService,
+ public InvalidationFrontend,
public content::NotificationObserver {
public:
explicit InvalidationServiceAndroid(Profile* profile);
@@ -46,7 +47,7 @@ class InvalidationServiceAndroid
const invalidation::ObjectId& id,
const syncer::AckHandle& ack_handle) OVERRIDE;
virtual syncer::InvalidatorState GetInvalidatorState() const OVERRIDE;
- virtual std::string GetInvalidatorClientId() const OVERRIDE;
+ virtual std::string GetInvalidatorClientId() const;
// content::NotificationObserver implementation.
virtual void Observe(int type,