| Index: chrome/browser/prefs/profile_pref_store_manager.h
|
| diff --git a/chrome/browser/prefs/profile_pref_store_manager.h b/chrome/browser/prefs/profile_pref_store_manager.h
|
| index ef2f7aa60a23835ff7a8fa6f312f17c8f6c1ef05..95757a67b1e7c398112a541f27c5413e4617d3cb 100644
|
| --- a/chrome/browser/prefs/profile_pref_store_manager.h
|
| +++ b/chrome/browser/prefs/profile_pref_store_manager.h
|
| @@ -15,24 +15,17 @@
|
| #include "base/macros.h"
|
| #include "base/memory/ref_counted.h"
|
| #include "services/preferences/public/interfaces/preferences_configuration.mojom.h"
|
| +#include "services/preferences/public/interfaces/tracked_preference_validation_delegate.mojom.h"
|
|
|
| -class HashStoreContents;
|
| class PersistentPrefStore;
|
| -class PrefHashStore;
|
| class PrefRegistry;
|
| class PrefService;
|
|
|
| namespace base {
|
| class DictionaryValue;
|
| -class SequencedTaskRunner;
|
| +class SequencedWorkerPool;
|
| } // namespace base
|
|
|
| -namespace prefs {
|
| -namespace mojom {
|
| -class TrackedPreferenceValidationDelegate;
|
| -}
|
| -}
|
| -
|
| namespace service_manager {
|
| class Connector;
|
| }
|
| @@ -47,20 +40,12 @@ class ProfilePrefStoreManager {
|
| public:
|
| // Instantiates a ProfilePrefStoreManager with the configuration required to
|
| // manage the user preferences of the profile at |profile_path|.
|
| - // |tracking_configuration| is used for preference tracking.
|
| - // |reporting_ids_count| is the count of all possible tracked preference IDs
|
| - // (possibly greater than |tracking_configuration.size()|).
|
| // |seed| and |legacy_device_id| are used to track preference value changes
|
| // and must be the same on each launch in order to verify loaded preference
|
| // values.
|
| - ProfilePrefStoreManager(
|
| - const base::FilePath& profile_path,
|
| - std::vector<prefs::mojom::TrackedPreferenceMetadataPtr>
|
| - tracking_configuration,
|
| - size_t reporting_ids_count,
|
| - const std::string& seed,
|
| - const std::string& legacy_device_id,
|
| - PrefService* local_state);
|
| + ProfilePrefStoreManager(const base::FilePath& profile_path,
|
| + const std::string& seed,
|
| + const std::string& legacy_device_id);
|
|
|
| ~ProfilePrefStoreManager();
|
|
|
| @@ -89,14 +74,20 @@ class ProfilePrefStoreManager {
|
| #endif
|
|
|
| // Creates a PersistentPrefStore providing access to the user preferences of
|
| - // the managed profile. If |on_reset| is provided, it will be invoked if a
|
| - // reset occurs as a result of loading the profile's prefs.
|
| - // An optional |validation_delegate| will be notified
|
| - // of the status of each tracked preference as they are checked.
|
| + // the managed profile. If |reset_on_load_observer| is provided, it will be
|
| + // notified if a reset occurs as a result of loading the profile's prefs. An
|
| + // optional |validation_delegate| will be notified of the status of each
|
| + // tracked preference as they are checked.
|
| + // |tracking_configuration| is used for preference tracking.
|
| + // |reporting_ids_count| is the count of all possible tracked preference IDs
|
| + // (possibly greater than |tracking_configuration.size()|).
|
| PersistentPrefStore* CreateProfilePrefStore(
|
| - const scoped_refptr<base::SequencedTaskRunner>& io_task_runner,
|
| - const base::Closure& on_reset_on_load,
|
| - prefs::mojom::TrackedPreferenceValidationDelegate* validation_delegate,
|
| + std::vector<prefs::mojom::TrackedPreferenceMetadataPtr>
|
| + tracking_configuration,
|
| + size_t reporting_ids_count,
|
| + base::SequencedWorkerPool* worker_pool,
|
| + prefs::mojom::ResetOnLoadObserverPtr reset_on_load_observer,
|
| + prefs::mojom::TrackedPreferenceValidationDelegatePtr validation_delegate,
|
| service_manager::Connector* connector,
|
| scoped_refptr<PrefRegistry> pref_registry);
|
|
|
| @@ -104,38 +95,32 @@ class ProfilePrefStoreManager {
|
| // values in |master_prefs|. Acts synchronously, including blocking IO.
|
| // Returns true on success.
|
| bool InitializePrefsFromMasterPrefs(
|
| + std::vector<prefs::mojom::TrackedPreferenceMetadataPtr>
|
| + tracking_configuration,
|
| + size_t reporting_ids_count,
|
| std::unique_ptr<base::DictionaryValue> master_prefs);
|
|
|
| - // Creates a single-file PrefStore as was used in M34 and earlier. Used only
|
| - // for testing migration.
|
| - PersistentPrefStore* CreateDeprecatedCombinedProfilePrefStore(
|
| - const scoped_refptr<base::SequencedTaskRunner>& io_task_runner);
|
| -
|
| private:
|
| - // Returns a PrefHashStore for the managed profile. Should only be called
|
| - // if |kPlatformSupportsPreferenceTracking|. |use_super_mac| determines
|
| - // whether the returned object will calculate, store, and validate super MACs
|
| - // (and, by extension, accept non-null newly protected preferences as
|
| - // TrustedInitialized).
|
| - std::unique_ptr<PrefHashStore> GetPrefHashStore(bool use_super_mac);
|
| -
|
| - // Returns a PrefHashStore and HashStoreContents which can be be used for
|
| - // extra out-of-band verifications, or nullptrs if not available on this
|
| - // platform.
|
| - std::pair<std::unique_ptr<PrefHashStore>, std::unique_ptr<HashStoreContents>>
|
| - GetExternalVerificationPrefHashStorePair();
|
| -
|
| // Connects to the pref service over mojo and configures it.
|
| - void ConfigurePrefService(const base::Closure& on_reset_on_load,
|
| - service_manager::Connector* connector);
|
| + void ConfigurePrefService(
|
| + std::vector<prefs::mojom::TrackedPreferenceMetadataPtr>
|
| + tracking_configuration,
|
| + size_t reporting_ids_count,
|
| + prefs::mojom::ResetOnLoadObserverPtr reset_on_load_observer,
|
| + prefs::mojom::TrackedPreferenceValidationDelegatePtr validation_delegate,
|
| + service_manager::Connector* connector);
|
| +
|
| + prefs::mojom::TrackedPersistentPrefStoreConfigurationPtr
|
| + CreateTrackedPrefStoreConfiguration(
|
| + std::vector<prefs::mojom::TrackedPreferenceMetadataPtr>
|
| + tracking_configuration,
|
| + size_t reporting_ids_count,
|
| + prefs::mojom::ResetOnLoadObserverPtr reset_on_load_observer,
|
| + prefs::mojom::TrackedPreferenceValidationDelegatePtr validation_delegate);
|
|
|
| const base::FilePath profile_path_;
|
| - std::vector<prefs::mojom::TrackedPreferenceMetadataPtr>
|
| - tracking_configuration_;
|
| - const size_t reporting_ids_count_;
|
| const std::string seed_;
|
| const std::string legacy_device_id_;
|
| - PrefService* local_state_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ProfilePrefStoreManager);
|
| };
|
|
|