| Index: chrome/browser/prefs/tracked/tracked_preference_validation_delegate.h
|
| diff --git a/chrome/browser/prefs/tracked/tracked_preference_validation_delegate.h b/chrome/browser/prefs/tracked/tracked_preference_validation_delegate.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..64a6cc4371d7f273dcb4703849043b48ec9ead8a
|
| --- /dev/null
|
| +++ b/chrome/browser/prefs/tracked/tracked_preference_validation_delegate.h
|
| @@ -0,0 +1,46 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef CHROME_BROWSER_PREFS_TRACKED_TRACKED_PREFERENCE_VALIDATION_DELEGATE_H_
|
| +#define CHROME_BROWSER_PREFS_TRACKED_TRACKED_PREFERENCE_VALIDATION_DELEGATE_H_
|
| +
|
| +#include <string>
|
| +#include <vector>
|
| +
|
| +#include "chrome/browser/prefs/pref_hash_store_transaction.h"
|
| +#include "chrome/browser/prefs/tracked/tracked_preference_helper.h"
|
| +
|
| +namespace base {
|
| +class DictionaryValue;
|
| +class Value;
|
| +}
|
| +
|
| +// A TrackedPreferenceValidationDelegate is notified of the results of each
|
| +// tracked preference validation event.
|
| +class TrackedPreferenceValidationDelegate {
|
| + public:
|
| + virtual ~TrackedPreferenceValidationDelegate() {}
|
| +
|
| + // Notifies observes of the result (|value_state|) of checking the atomic
|
| + // |value| at |pref_path|. |reset_action| indicates whether or not a reset
|
| + // will occur based on |value_state| and the enforcement level in place.
|
| + virtual void OnAtomicPreferenceValidation(
|
| + const std::string& pref_path,
|
| + const base::Value* value,
|
| + PrefHashStoreTransaction::ValueState value_state,
|
| + TrackedPreferenceHelper::ResetAction reset_action) = 0;
|
| +
|
| + // Notifies observes of the result (|value_state|) of checking the split
|
| + // |dict_value| at |pref_path|. |reset_action| indicates whether or not a
|
| + // reset of |value_keys| will occur based on |value_state| and the enforcement
|
| + // level in place.
|
| + virtual void OnSplitPreferenceValidation(
|
| + const std::string& pref_path,
|
| + const base::DictionaryValue* dict_value,
|
| + const std::vector<std::string>& invalid_keys,
|
| + PrefHashStoreTransaction::ValueState value_state,
|
| + TrackedPreferenceHelper::ResetAction reset_action) = 0;
|
| +};
|
| +
|
| +#endif // CHROME_BROWSER_PREFS_TRACKED_TRACKED_PREFERENCE_VALIDATION_DELEGATE_H_
|
|
|