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

Unified Diff: chrome/browser/sync/profile_sync_components_factory_impl.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/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..76c75167b5f78443e1248478f8459c820ea95f4e 100644
--- a/chrome/browser/sync/profile_sync_components_factory_impl.h
+++ b/chrome/browser/sync/profile_sync_components_factory_impl.h
@@ -11,22 +11,23 @@
#include "base/compiler_specific.h"
#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 "google_apis/gaia/oauth2_token_service.h"
+#include "components/sync_driver/sync_api_component_factory.h"
#include "sync/internal_api/public/base/model_type.h"
+#include "url/gurl.h"
+class OAuth2TokenService;
class Profile;
namespace base {
class CommandLine;
}
-namespace extensions {
-class ExtensionSystem;
+namespace net {
+class URLRequestContextGetter;
}
-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() 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;
@@ -90,14 +90,12 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory {
// |disabled_types| and |enabled_types| correspond only to those types
// being explicitly enabled/disabled by the command line.
void RegisterDesktopDataTypes(syncer::ModelTypeSet disabled_types,
- syncer::ModelTypeSet enabled_types,
- ProfileSyncService* pss);
+ syncer::ModelTypeSet enabled_types);
// 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);
+ syncer::ModelTypeSet enabled_types);
// Used to bind a callback to give to DataTypeControllers to disable
// data types.
sync_driver::DataTypeController::DisableTypeCallback
@@ -108,13 +106,14 @@ class ProfileSyncComponentsFactoryImpl : public ProfileSyncComponentsFactory {
Profile* profile_;
base::CommandLine* command_line_;
- scoped_refptr<autofill::AutofillWebDataService> web_data_service_;
const GURL sync_service_url_;
OAuth2TokenService* const token_service_;
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_;

Powered by Google App Engine
This is Rietveld 408576698