Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(247)

Unified Diff: chrome/browser/sync/chrome_sync_client.h

Issue 1310553005: [Sync] Replace ProfileSyncComponentsFactory with SyncClient (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Really fix GN Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/sync/chrome_sync_client.h
diff --git a/chrome/browser/sync/chrome_sync_client.h b/chrome/browser/sync/chrome_sync_client.h
index 8ee1328632812bcc52a22338840d9f107e6518a9..39f69adc285c76f720f010106802977de61b5376 100644
--- a/chrome/browser/sync/chrome_sync_client.h
+++ b/chrome/browser/sync/chrome_sync_client.h
@@ -7,17 +7,26 @@
#include "components/sync_driver/sync_client.h"
-class ProfileSyncComponentsFactoryImpl;
+class Profile;
+
+namespace sync_driver {
+class SyncApiComponentFactory;
+class SyncService;
+}
namespace browser_sync {
class ChromeSyncClient : public sync_driver::SyncClient {
public:
ChromeSyncClient(Profile* profile,
- ProfileSyncComponentsFactoryImpl* component_factory);
+ sync_driver::SyncApiComponentFactory* component_factory);
~ChromeSyncClient() override;
+ // Initializes the ChromeSyncClient internal state.
+ void Initialize(sync_driver::SyncService* sync_service);
+
// SyncClient implementation.
+ sync_driver::SyncService* GetSyncService() override;
PrefService* GetPrefService() override;
bookmarks::BookmarkModel* GetBookmarkModel() override;
history::HistoryService* GetHistoryService() override;
@@ -26,52 +35,27 @@ class ChromeSyncClient : public sync_driver::SyncClient {
scoped_refptr<autofill::AutofillWebDataService> GetWebDataService() override;
base::WeakPtr<syncer::SyncableService> GetSyncableServiceForType(
syncer::ModelType type) override;
- // TODO(zea): crbug.com/512768 Move the rest of these methods into
- // SyncApiComponentFactoryImpl (all of these methods currently delegate to
- // |component_factory_|), which will replace ProfileSyncComponentsFactoryImpl.
- scoped_ptr<syncer::AttachmentService> CreateAttachmentService(
- scoped_ptr<syncer::AttachmentStoreForSync> attachment_store,
- const syncer::UserShare& user_share,
- const std::string& store_birthday,
- syncer::ModelType model_type,
- syncer::AttachmentService::Delegate* delegate) override;
- void RegisterDataTypes(ProfileSyncService* pss) override;
- sync_driver::DataTypeManager* CreateDataTypeManager(
- const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>&
- debug_info_listener,
- const sync_driver::DataTypeController::TypeMap* controllers,
- const sync_driver::DataTypeEncryptionHandler* encryption_handler,
- browser_sync::SyncBackendHost* backend,
- sync_driver::DataTypeManagerObserver* observer) override;
- 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;
- scoped_ptr<sync_driver::LocalDeviceInfoProvider>
- CreateLocalDeviceInfoProvider() override;
- ProfileSyncComponentsFactory::SyncComponents CreateBookmarkSyncComponents(
- ProfileSyncService* profile_sync_service,
- sync_driver::DataTypeErrorHandler* error_handler) override;
- ProfileSyncComponentsFactory::SyncComponents CreateTypedUrlSyncComponents(
- ProfileSyncService* profile_sync_service,
- history::HistoryBackend* history_backend,
- sync_driver::DataTypeErrorHandler* error_handler) override;
-
- // TODO(zea): crbug.com/512768 Convert this to SyncApiComponentFactoryImpl
- // and make it part of the SyncClient interface.
- ProfileSyncComponentsFactoryImpl* GetProfileSyncComponentsFactoryImpl();
+ sync_driver::SyncApiComponentFactory* GetSyncApiComponentFactory() override;
private:
Profile* const profile_;
- ProfileSyncComponentsFactoryImpl* const component_factory_;
+
+ // TODO(zea): This is currently a pointer to the "parent" of this class, and
+ // is therefore not owned, but we should eventually have the SyncClient own
+ // the component factory (crbug.com/512832).
+ sync_driver::SyncApiComponentFactory* const component_factory_;
// Members that must be fetched on the UI thread but accessed on their
// respective backend threads.
scoped_refptr<autofill::AutofillWebDataService> web_data_service_;
scoped_refptr<password_manager::PasswordStore> password_store_;
+
+ // TODO(zea): this is a member only because Typed URLs needs access to
+ // the UserShare and Cryptographer outside of the UI thread. Remove this
+ // once that's no longer the case.
+ // Note: not owned.
+ sync_driver::SyncService* sync_service_;
};
} // namespace browser_sync
« no previous file with comments | « chrome/browser/supervised_user/supervised_user_sync_data_type_controller.cc ('k') | chrome/browser/sync/chrome_sync_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698