| Index: chrome/browser/sync/glue/sync_backend_host.h
|
| diff --git a/chrome/browser/sync/glue/sync_backend_host.h b/chrome/browser/sync/glue/sync_backend_host.h
|
| index dbc9ab6cf7f02b84d5ee141675b28d2cf950e2f5..11a0d59b4dbd4765b2a18ad61945348a948ac4c2 100644
|
| --- a/chrome/browser/sync/glue/sync_backend_host.h
|
| +++ b/chrome/browser/sync/glue/sync_backend_host.h
|
| @@ -14,6 +14,7 @@
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "base/threading/thread.h"
|
| +#include "chrome/browser/invalidation/invalidation_service.h"
|
| #include "chrome/browser/sync/glue/backend_data_type_configurer.h"
|
| #include "chrome/browser/sync/glue/chrome_extensions_activity_monitor.h"
|
| #include "content/public/browser/notification_observer.h"
|
| @@ -30,7 +31,6 @@
|
| #include "sync/internal_api/public/util/unrecoverable_error_handler.h"
|
| #include "sync/internal_api/public/util/weak_handle.h"
|
| #include "sync/notifier/invalidation_handler.h"
|
| -#include "sync/notifier/invalidator_factory.h"
|
| #include "sync/protocol/encryption.pb.h"
|
| #include "sync/protocol/sync_protocol_error.h"
|
|
|
| @@ -44,14 +44,10 @@ namespace syncer {
|
| class SyncManagerFactory;
|
| }
|
|
|
| -namespace invalidation {
|
| -class InvalidatorStorage;
|
| -}
|
| -
|
| namespace browser_sync {
|
|
|
| -class AndroidInvalidatorBridge;
|
| class ChangeProcessor;
|
| +class InvalidatorStorage;
|
| class SyncBackendRegistrar;
|
| class SyncPrefs;
|
| class SyncedDeviceTracker;
|
| @@ -62,7 +58,7 @@ struct Experiments;
|
| // activity.
|
| // NOTE: All methods will be invoked by a SyncBackendHost on the same thread
|
| // used to create that SyncBackendHost.
|
| -class SyncFrontend : public syncer::InvalidationHandler {
|
| +class SyncFrontend {
|
| public:
|
| SyncFrontend() {}
|
|
|
| @@ -153,7 +149,8 @@ class SyncFrontend : public syncer::InvalidationHandler {
|
| // that the SyncFrontend is only accessed on the UI loop.
|
| class SyncBackendHost
|
| : public BackendDataTypeConfigurer,
|
| - public content::NotificationObserver {
|
| + public content::NotificationObserver,
|
| + public syncer::InvalidationHandler {
|
| public:
|
| typedef syncer::SyncStatus Status;
|
|
|
| @@ -164,10 +161,7 @@ class SyncBackendHost
|
| SyncBackendHost(
|
| const std::string& name,
|
| Profile* profile,
|
| - const base::WeakPtr<SyncPrefs>& sync_prefs,
|
| - // TODO(tim): Temporary, remove when bug 124137 finished.
|
| - const base::WeakPtr<invalidation::InvalidatorStorage>&
|
| - invalidator_storage);
|
| + const base::WeakPtr<SyncPrefs>& sync_prefs);
|
|
|
| // For testing.
|
| // TODO(skrul): Extract an interface so this is not needed.
|
| @@ -194,14 +188,6 @@ class SyncBackendHost
|
| // Called on |frontend_loop| to update SyncCredentials.
|
| virtual void UpdateCredentials(const syncer::SyncCredentials& credentials);
|
|
|
| - // Registers the underlying frontend for the given IDs to the underlying
|
| - // notifier. This lasts until StopSyncingForShutdown() is called.
|
| - void UpdateRegisteredInvalidationIds(const syncer::ObjectIdSet& ids);
|
| -
|
| - // Forwards an invalidation acknowledgement to the underlying notifier.
|
| - void AcknowledgeInvalidation(const invalidation::ObjectId& id,
|
| - const syncer::AckHandle& ack_handle);
|
| -
|
| // This starts the SyncerThread running a Syncer object to communicate with
|
| // sync servers. Until this is called, no changes will leave or enter this
|
| // browser from the cloud / sync servers.
|
| @@ -325,8 +311,7 @@ class SyncBackendHost
|
| const GURL& service_url,
|
| MakeHttpBridgeFactoryFn make_http_bridge_factory_fn,
|
| const syncer::SyncCredentials& credentials,
|
| - AndroidInvalidatorBridge* android_invalidator_bridge,
|
| - syncer::InvalidatorFactory* invalidator_factory,
|
| + const std::string& invalidator_client_id,
|
| syncer::SyncManagerFactory* sync_manager_factory,
|
| bool delete_sync_data_folder,
|
| const std::string& restored_key_for_bootstrapping,
|
| @@ -335,8 +320,7 @@ class SyncBackendHost
|
| syncer::UnrecoverableErrorHandler* unrecoverable_error_handler,
|
| syncer::ReportUnrecoverableErrorFunction
|
| report_unrecoverable_error_function,
|
| - bool use_oauth2_token,
|
| - bool create_invalidator);
|
| + bool use_oauth2_token);
|
| ~DoInitializeOptions();
|
|
|
| base::MessageLoop* sync_loop;
|
| @@ -349,8 +333,7 @@ class SyncBackendHost
|
| // Overridden by tests.
|
| MakeHttpBridgeFactoryFn make_http_bridge_factory_fn;
|
| syncer::SyncCredentials credentials;
|
| - AndroidInvalidatorBridge* const android_invalidator_bridge;
|
| - syncer::InvalidatorFactory* const invalidator_factory;
|
| + const std::string invalidator_client_id;
|
| syncer::SyncManagerFactory* const sync_manager_factory;
|
| std::string lsid;
|
| bool delete_sync_data_folder;
|
| @@ -361,7 +344,6 @@ class SyncBackendHost
|
| syncer::ReportUnrecoverableErrorFunction
|
| report_unrecoverable_error_function;
|
| bool use_oauth2_token;
|
| - bool create_invalidator;
|
| };
|
|
|
| // Allows tests to perform alternate core initialization work.
|
| @@ -383,6 +365,7 @@ class SyncBackendHost
|
|
|
| // Called when the syncer has finished performing a configuration.
|
| void FinishConfigureDataTypesOnFrontendLoop(
|
| + const syncer::ModelTypeSet enabled_types,
|
| const syncer::ModelTypeSet succeeded_configuration_types,
|
| const syncer::ModelTypeSet failed_configuration_types,
|
| const base::Callback<void(syncer::ModelTypeSet,
|
| @@ -515,6 +498,12 @@ class SyncBackendHost
|
| const content::NotificationSource& source,
|
| const content::NotificationDetails& details) OVERRIDE;
|
|
|
| + // InvalidationHandler implementation.
|
| + virtual void OnInvalidatorStateChange(
|
| + syncer::InvalidatorState state) OVERRIDE;
|
| + virtual void OnIncomingInvalidation(
|
| + const syncer::ObjectIdInvalidationMap& invalidation_map) OVERRIDE;
|
| +
|
| // Handles stopping the core's SyncManager, accounting for whether
|
| // initialization is done yet.
|
| void StopSyncManagerForShutdown(const base::Closure& closure);
|
| @@ -542,10 +531,6 @@ class SyncBackendHost
|
|
|
| const base::WeakPtr<SyncPrefs> sync_prefs_;
|
|
|
| - scoped_ptr<AndroidInvalidatorBridge> android_invalidator_bridge_;
|
| -
|
| - syncer::InvalidatorFactory invalidator_factory_;
|
| -
|
| ChromeExtensionsActivityMonitor extensions_activity_monitor_;
|
|
|
| scoped_ptr<SyncBackendRegistrar> registrar_;
|
| @@ -583,6 +568,8 @@ class SyncBackendHost
|
| syncer::WeakHandle<syncer::JsBackend> js_backend_;
|
| syncer::WeakHandle<syncer::DataTypeDebugInfoListener> debug_info_listener_;
|
|
|
| + invalidation::InvalidationService* invalidator_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(SyncBackendHost);
|
| };
|
|
|
|
|