| Index: chrome/browser/sync/glue/sync_backend_host_impl.h
|
| diff --git a/chrome/browser/sync/glue/sync_backend_host_impl.h b/chrome/browser/sync/glue/sync_backend_host_impl.h
|
| index 24e621513239c4b52efa5f5a1c714c482d949be6..5b5b1242f21c9e7e6142c01712714e766c14382f 100644
|
| --- a/chrome/browser/sync/glue/sync_backend_host_impl.h
|
| +++ b/chrome/browser/sync/glue/sync_backend_host_impl.h
|
| @@ -100,6 +100,8 @@ class SyncBackendHostImpl
|
| virtual void StopSyncingForShutdown() OVERRIDE;
|
| virtual scoped_ptr<base::Thread> Shutdown(ShutdownOption option) OVERRIDE;
|
| virtual void UnregisterInvalidationIds() OVERRIDE;
|
| + virtual void SetPreferredNonBlockingTypes(
|
| + syncer::ModelTypeSet types) OVERRIDE;
|
| virtual void ConfigureDataTypes(
|
| syncer::ConfigureReason reason,
|
| const DataTypeConfigStateMap& config_state_map,
|
| @@ -112,6 +114,7 @@ class SyncBackendHostImpl
|
| ChangeProcessor* change_processor) OVERRIDE;
|
| virtual void DeactivateDataType(syncer::ModelType type) OVERRIDE;
|
| virtual syncer::UserShare* GetUserShare() const OVERRIDE;
|
| + virtual syncer::SyncCoreProxy GetSyncCoreProxy() OVERRIDE;
|
| virtual Status GetDetailedStatus() OVERRIDE;
|
| virtual syncer::sessions::SyncSessionSnapshot
|
| GetLastSessionSnapshot() const OVERRIDE;
|
| @@ -161,7 +164,8 @@ class SyncBackendHostImpl
|
| virtual void HandleInitializationSuccessOnFrontendLoop(
|
| const syncer::WeakHandle<syncer::JsBackend> js_backend,
|
| const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>
|
| - debug_info_listener);
|
| + debug_info_listener,
|
| + base::WeakPtr<syncer::SyncCore> sync_core);
|
|
|
| // Downloading of control types failed and will be retried. Invokes the
|
| // frontend's sync configure retry method.
|
| @@ -257,6 +261,9 @@ class SyncBackendHostImpl
|
| void HandleConnectionStatusChangeOnFrontendLoop(
|
| syncer::ConnectionStatus status);
|
|
|
| + // Re-registers the appropriate set of ObjectIds with the invalidator.
|
| + void UpdateRegisteredInvalidationTypes();
|
| +
|
| // NotificationObserver implementation.
|
| virtual void Observe(
|
| int type,
|
| @@ -286,6 +293,9 @@ class SyncBackendHostImpl
|
| // sync loop.
|
| scoped_refptr<SyncBackendHostCore> core_;
|
|
|
| + // A handle referencing the main interface for non-blocking sync types.
|
| + scoped_ptr<syncer::SyncCoreProxy> sync_core_proxy_;
|
| +
|
| bool initialized_;
|
|
|
| const base::WeakPtr<sync_driver::SyncPrefs> sync_prefs_;
|
| @@ -323,6 +333,12 @@ class SyncBackendHostImpl
|
| invalidation::InvalidationService* invalidator_;
|
| bool invalidation_handler_registered_;
|
|
|
| + // The set of enabled directory types, as of the last successful configure.
|
| + syncer::ModelTypeSet enabled_directory_types_;
|
| +
|
| + // The set of preferred non-blocking types, as set by the frontend.
|
| + syncer::ModelTypeSet preferred_non_blocking_types_;
|
| +
|
| base::WeakPtrFactory<SyncBackendHostImpl> weak_ptr_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(SyncBackendHostImpl);
|
|
|