Chromium Code Reviews| 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 |