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

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

Issue 428143002: Sync: Add a SyncTypePreferenceProvider interface. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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_service.h
diff --git a/chrome/browser/sync/profile_sync_service.h b/chrome/browser/sync/profile_sync_service.h
index 6ff5bf51d9f0d2418e833cb676b4e909cdb0efdb..bf1aa7b13d5f2cf8fe8067c611161dc0044befb2 100644
--- a/chrome/browser/sync/profile_sync_service.h
+++ b/chrome/browser/sync/profile_sync_service.h
@@ -54,6 +54,7 @@
class Profile;
class ProfileOAuth2TokenService;
class ProfileSyncComponentsFactory;
+class ProfileSyncServiceDataTypeProvider;
class SupervisedUserSigninManagerWrapper;
class SyncErrorController;
@@ -300,6 +301,10 @@ class ProfileSyncService : public ProfileSyncServiceBase,
void AddTypeDebugInfoObserver(syncer::TypeDebugInfoObserver* observer);
void RemoveTypeDebugInfoObserver(syncer::TypeDebugInfoObserver* observer);
+ void AddDataTypeProvider(ProfileSyncServiceDataTypeProvider* provider);
+ void RemoveDataTypeProvider(ProfileSyncServiceDataTypeProvider* provider);
+ bool HasDataTypeProvider(ProfileSyncServiceDataTypeProvider* provider) const;
+
// Asynchronously fetches base::Value representations of all sync nodes and
// returns them to the specified callback on this thread.
//
@@ -919,6 +924,9 @@ class ProfileSyncService : public ProfileSyncServiceBase,
// want to startup once more.
virtual void ReconfigureDatatypeManager();
+ // Collects required sync data types from |data_type_providers_|.
+ syncer::ModelTypeSet GetRequiredDataTypes();
Marc Treib 2014/07/30 11:42:50 Might have to make this public, so the UI can adap
+
// Called when the user changes the sync configuration, to update the UMA
// stats.
void UpdateSelectedTypesHistogram(
@@ -1023,6 +1031,8 @@ class ProfileSyncService : public ProfileSyncServiceBase,
ObserverList<browser_sync::ProtocolEventObserver> protocol_event_observers_;
ObserverList<syncer::TypeDebugInfoObserver> type_debug_info_observers_;
+ std::list<ProfileSyncServiceDataTypeProvider*> data_type_providers_;
+
syncer::SyncJsController sync_js_controller_;
// This allows us to gracefully handle an ABORTED return code from the

Powered by Google App Engine
This is Rietveld 408576698