| Index: chrome/browser/prefs/pref_hash_filter.cc
|
| diff --git a/chrome/browser/prefs/pref_hash_filter.cc b/chrome/browser/prefs/pref_hash_filter.cc
|
| index 4ba42e3d8855b934a0b883e09d2aef371eb089eb..78b1e25935d39f28342942c7051c4f0d31bc0c8b 100644
|
| --- a/chrome/browser/prefs/pref_hash_filter.cc
|
| +++ b/chrome/browser/prefs/pref_hash_filter.cc
|
| @@ -15,6 +15,7 @@
|
| #include "base/values.h"
|
| #include "chrome/browser/prefs/pref_hash_store_transaction.h"
|
| #include "chrome/browser/prefs/tracked/tracked_atomic_preference.h"
|
| +#include "chrome/browser/prefs/tracked/tracked_preference_validation_observer.h"
|
| #include "chrome/browser/prefs/tracked/tracked_split_preference.h"
|
| #include "chrome/common/pref_names.h"
|
| #include "components/user_prefs/pref_registry_syncable.h"
|
| @@ -22,8 +23,9 @@
|
| PrefHashFilter::PrefHashFilter(
|
| scoped_ptr<PrefHashStore> pref_hash_store,
|
| const std::vector<TrackedPreferenceMetadata>& tracked_preferences,
|
| + scoped_ptr<TrackedPreferenceValidationObserver> observer,
|
| size_t reporting_ids_count)
|
| - : pref_hash_store_(pref_hash_store.Pass()) {
|
| + : pref_hash_store_(pref_hash_store.Pass()), observer_(observer.Pass()) {
|
| DCHECK(pref_hash_store_);
|
| DCHECK_GE(reporting_ids_count, tracked_preferences.size());
|
|
|
| @@ -34,15 +36,19 @@ PrefHashFilter::PrefHashFilter(
|
| switch (metadata.strategy) {
|
| case TRACKING_STRATEGY_ATOMIC:
|
| tracked_preference.reset(
|
| - new TrackedAtomicPreference(metadata.name, metadata.reporting_id,
|
| + new TrackedAtomicPreference(metadata.name,
|
| + metadata.reporting_id,
|
| reporting_ids_count,
|
| - metadata.enforcement_level));
|
| + metadata.enforcement_level,
|
| + observer_.get()));
|
| break;
|
| case TRACKING_STRATEGY_SPLIT:
|
| tracked_preference.reset(
|
| - new TrackedSplitPreference(metadata.name, metadata.reporting_id,
|
| + new TrackedSplitPreference(metadata.name,
|
| + metadata.reporting_id,
|
| reporting_ids_count,
|
| - metadata.enforcement_level));
|
| + metadata.enforcement_level,
|
| + observer_.get()));
|
| break;
|
| }
|
| DCHECK(tracked_preference);
|
|
|