| 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 79b2a52657a5ed9577560b9a270eaa7320710a91..228dfbba90f79c3c6b67582ee35023b9da2b09ec 100644
|
| --- a/chrome/browser/sync/profile_sync_service.h
|
| +++ b/chrome/browser/sync/profile_sync_service.h
|
| @@ -300,6 +300,12 @@ class ProfileSyncService : public ProfileSyncServiceBase,
|
| void RegisterDataTypeController(
|
| browser_sync::DataTypeController* data_type_controller);
|
|
|
| + // Registers a type whose sync storage will not be managed by the
|
| + // ProfileSyncService. It declares that this sync type may be activated at
|
| + // some point in the future. This function call does not enable or activate
|
| + // the syncing of this type
|
| + void RegisterNonBlockingType(syncer::ModelType type);
|
| +
|
| // Returns the session model associator associated with this type, but only if
|
| // the associator is running. If it is doing anything else, it will return
|
| // null.
|
| @@ -578,12 +584,24 @@ class ProfileSyncService : public ProfileSyncServiceBase,
|
| // superset of the active types (see GetActiveDataTypes()).
|
| virtual syncer::ModelTypeSet GetPreferredDataTypes() const;
|
|
|
| + // Returns the set of directory types which are preferred for enabling.
|
| + virtual syncer::ModelTypeSet GetPreferredDirectoryDataTypes() const;
|
| +
|
| + // Returns the set of off-thread types which are preferred for enabling.
|
| + virtual syncer::ModelTypeSet GetPreferredNonBlockingDataTypes() const;
|
| +
|
| // Gets the set of all data types that could be allowed (the set that
|
| // should be advertised to the user). These will typically only change
|
| // via a command-line option. See class comment for more on what it means
|
| // for a datatype to be Registered.
|
| virtual syncer::ModelTypeSet GetRegisteredDataTypes() const;
|
|
|
| + // Gets the set of directory types which could be allowed.
|
| + virtual syncer::ModelTypeSet GetRegisteredDirectoryDataTypes() const;
|
| +
|
| + // Gets the set of off-thread types which could be allowed.
|
| + virtual syncer::ModelTypeSet GetRegisteredNonBlockingDataTypes() const;
|
| +
|
| // Checks whether the Cryptographer is ready to encrypt and decrypt updates
|
| // for sensitive data types. Caller must be holding a
|
| // syncapi::BaseTransaction to ensure thread safety.
|
| @@ -892,6 +910,9 @@ class ProfileSyncService : public ProfileSyncServiceBase,
|
| // List of available data type controllers.
|
| browser_sync::DataTypeController::TypeMap data_type_controllers_;
|
|
|
| + // List of registered types that use the non-blocking API.
|
| + syncer::ModelTypeSet non_blocking_types_;
|
| +
|
| // Whether the SyncBackendHost has been initialized.
|
| bool backend_initialized_;
|
|
|
|
|