Index: chrome/browser/sync/profile_sync_components_factory_impl.h |
diff --git a/chrome/browser/sync/profile_sync_components_factory_impl.h b/chrome/browser/sync/profile_sync_components_factory_impl.h |
index bb086e87939bf3c1b624655a5724152229b2e2b5..74e5a607a2502b550c54db99fa881e942f05481c 100644 |
--- a/chrome/browser/sync/profile_sync_components_factory_impl.h |
+++ b/chrome/browser/sync/profile_sync_components_factory_impl.h |
@@ -12,7 +12,7 @@ |
#include "base/memory/weak_ptr.h" |
#include "chrome/browser/sync/chrome_sync_client.h" |
#include "components/autofill/core/browser/webdata/autofill_webdata_service.h" |
-#include "components/sync_driver/profile_sync_components_factory.h" |
+#include "components/sync_driver/sync_api_component_factory.h" |
#include "google_apis/gaia/oauth2_token_service.h" |
#include "sync/internal_api/public/base/model_type.h" |
@@ -26,7 +26,8 @@ namespace extensions { |
class ExtensionSystem; |
} |
-class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory { |
+class ProfileSyncComponentsFactoryImpl |
+ : public sync_driver::SyncApiComponentFactory { |
public: |
// Constructs a ProfileSyncComponentsFactoryImpl. |
// |
@@ -44,7 +45,10 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory { |
net::URLRequestContextGetter* url_request_context_getter); |
~ProfileSyncComponentsFactoryImpl() override; |
- void RegisterDataTypes(ProfileSyncService* pss) override; |
+ // Initializes internal state after construction. |
+ void Initialize(sync_driver::SyncService* sync_service) override; |
+ |
+ void RegisterDataTypes(sync_driver::SyncService* pss) override; |
sync_driver::DataTypeManager* CreateDataTypeManager( |
const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>& |
@@ -56,7 +60,6 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory { |
browser_sync::SyncBackendHost* CreateSyncBackendHost( |
const std::string& name, |
- Profile* profile, |
invalidation::InvalidationService* invalidator, |
const base::WeakPtr<sync_driver::SyncPrefs>& sync_prefs, |
const base::FilePath& sync_folder) override; |
@@ -64,11 +67,6 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory { |
scoped_ptr<sync_driver::LocalDeviceInfoProvider> |
CreateLocalDeviceInfoProvider() override; |
- // TODO(zea): crbug.com/512768 Remove GetSyncableServiceForType from |
- // ProfileSyncComponentsFactory and have everything use the SyncClient |
- // instead. |
- base::WeakPtr<syncer::SyncableService> GetSyncableServiceForType( |
- syncer::ModelType type) override; |
scoped_ptr<syncer::AttachmentService> CreateAttachmentService( |
scoped_ptr<syncer::AttachmentStoreForSync> attachment_store, |
const syncer::UserShare& user_share, |
@@ -77,11 +75,13 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory { |
syncer::AttachmentService::Delegate* delegate) override; |
// Legacy datatypes that need to be converted to the SyncableService API. |
- SyncComponents CreateBookmarkSyncComponents( |
- ProfileSyncService* profile_sync_service, |
+ sync_driver::SyncApiComponentFactory::SyncComponents |
+ CreateBookmarkSyncComponents( |
+ sync_driver::SyncService* sync_service, |
sync_driver::DataTypeErrorHandler* error_handler) override; |
- SyncComponents CreateTypedUrlSyncComponents( |
- ProfileSyncService* profile_sync_service, |
+ sync_driver::SyncApiComponentFactory::SyncComponents |
+ CreateTypedUrlSyncComponents( |
+ sync_driver::SyncService* sync_service, |
history::HistoryBackend* history_backend, |
sync_driver::DataTypeErrorHandler* error_handler) override; |
@@ -91,13 +91,13 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory { |
// being explicitly enabled/disabled by the command line. |
void RegisterDesktopDataTypes(syncer::ModelTypeSet disabled_types, |
syncer::ModelTypeSet enabled_types, |
- ProfileSyncService* pss); |
+ sync_driver::SyncService* pss); |
// Register data types which are enabled on both desktop and mobile. |
// |disabled_types| and |enabled_types| correspond only to those types |
// being explicitly enabled/disabled by the command line. |
void RegisterCommonDataTypes(syncer::ModelTypeSet disabled_types, |
syncer::ModelTypeSet enabled_types, |
- ProfileSyncService* pss); |
+ sync_driver::SyncService* pss); |
// Used to bind a callback to give to DataTypeControllers to disable |
// data types. |
sync_driver::DataTypeController::DisableTypeCallback |
@@ -115,6 +115,8 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory { |
net::URLRequestContextGetter* const url_request_context_getter_; |
// Chrome specific implementation of SyncClient. |
+ // TODO(zea): Move the creation of this into the ProfileSyncServiceFactory, |
+ // and ownership to the ProfileSyncService itself. |
browser_sync::ChromeSyncClient chrome_sync_client_; |
base::WeakPtrFactory<ProfileSyncComponentsFactoryImpl> weak_factory_; |