| 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 21fe22a11a7b4172f0fba9ac4a9862ebe5e3f62d..6d874cac6bf097b0701b77bfa748d8f89a52b018 100644
|
| --- a/chrome/browser/sync/glue/sync_backend_host.h
|
| +++ b/chrome/browser/sync/glue/sync_backend_host.h
|
| @@ -34,6 +34,7 @@
|
|
|
| class CancelableTask;
|
| class Profile;
|
| +class ProfileSyncFactory;
|
|
|
| namespace net {
|
| class URLRequestContextGetter;
|
| @@ -46,6 +47,7 @@ struct SyncSessionSnapshot;
|
| }
|
|
|
| class ChangeProcessor;
|
| +class DataTypeController;
|
| class JsEventHandler;
|
|
|
| // SyncFrontend is the interface used by SyncBackendHost to communicate with
|
| @@ -101,6 +103,16 @@ class SyncFrontend {
|
| virtual void OnMigrationNeededForTypes(
|
| const syncable::ModelTypeSet& types) = 0;
|
|
|
| + // Get the list of types that can be enabled.
|
| + virtual void GetRegisteredDataTypes(syncable::ModelTypeSet* types) const = 0;
|
| +
|
| + // Get the list of types that are enabled.
|
| + virtual void GetPreferredDataTypes(syncable::ModelTypeSet* types) const = 0;
|
| +
|
| + // Register a DataTypeController.
|
| + virtual void RegisterDataTypeController(
|
| + browser_sync::DataTypeController* data_type_controller) = 0;
|
| +
|
| protected:
|
| // Don't delete through SyncFrontend interface.
|
| virtual ~SyncFrontend() {
|
| @@ -134,6 +146,7 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar {
|
| // bootstrap authentication using |lsid|, if it isn't empty.
|
| // Optionally delete the Sync Data folder (if it's corrupt).
|
| void Initialize(SyncFrontend* frontend,
|
| + ProfileSyncFactory* factory,
|
| const WeakHandle<JsEventHandler>& event_handler,
|
| const GURL& service_url,
|
| const syncable::ModelTypeSet& initial_types,
|
| @@ -598,6 +611,9 @@ class SyncBackendHost : public browser_sync::ModelSafeWorkerRegistrar {
|
| // The frontend which we serve (and are owned by).
|
| SyncFrontend* frontend_;
|
|
|
| + // The factory for creating DataTypeControllers.
|
| + ProfileSyncFactory* profile_sync_factory_;
|
| +
|
| // The change processors that handle the different data types.
|
| std::map<syncable::ModelType, ChangeProcessor*> processors_;
|
|
|
|
|