Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(798)

Unified Diff: services/preferences/tracked/pref_hash_store_impl.cc

Issue 2782803002: Move tracked prefs into services/preferences/tracked. (Closed)
Patch Set: rebase Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: services/preferences/tracked/pref_hash_store_impl.cc
diff --git a/components/user_prefs/tracked/pref_hash_store_impl.cc b/services/preferences/tracked/pref_hash_store_impl.cc
similarity index 89%
rename from components/user_prefs/tracked/pref_hash_store_impl.cc
rename to services/preferences/tracked/pref_hash_store_impl.cc
index 6487822fdb1df7671f5971a5c90de4a9bbb56027..522b013c5bc1cadaecd1a17ec470ff6e35207267 100644
--- a/components/user_prefs/tracked/pref_hash_store_impl.cc
+++ b/services/preferences/tracked/pref_hash_store_impl.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "components/user_prefs/tracked/pref_hash_store_impl.h"
+#include "services/preferences/tracked/pref_hash_store_impl.h"
#include <stddef.h>
#include <utility>
@@ -10,11 +10,14 @@
#include "base/logging.h"
#include "base/macros.h"
#include "base/metrics/histogram_macros.h"
-#include "components/user_prefs/tracked/device_id.h"
-#include "components/user_prefs/tracked/hash_store_contents.h"
+#include "services/preferences/tracked/device_id.h"
+#include "services/preferences/tracked/hash_store_contents.h"
namespace {
+using ValueState =
+ prefs::mojom::TrackedPreferenceValidationDelegate::ValueState;
+
// Returns a deterministic ID for this machine.
std::string GenerateDeviceId() {
static std::string cached_device_id;
@@ -82,8 +85,7 @@ PrefHashStoreImpl::PrefHashStoreImpl(const std::string& seed,
: pref_hash_calculator_(seed, GenerateDeviceId(), legacy_device_id),
use_super_mac_(use_super_mac) {}
-PrefHashStoreImpl::~PrefHashStoreImpl() {
-}
+PrefHashStoreImpl::~PrefHashStoreImpl() {}
std::unique_ptr<PrefHashStoreTransaction> PrefHashStoreImpl::BeginTransaction(
HashStoreContents* storage) {
@@ -154,8 +156,7 @@ PrefHashStoreImpl::PrefHashStoreTransactionImpl::GetStoreUMASuffix() const {
return contents_->GetUMASuffix();
}
-PrefHashStoreTransaction::ValueState
-PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckValue(
+ValueState PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckValue(
const std::string& path,
const base::Value* initial_value) const {
std::string last_hash;
@@ -165,26 +166,26 @@ PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckValue(
// In the absence of a hash for this pref, always trust a NULL value, but
// only trust an existing value if the initial hashes dictionary is trusted.
if (!initial_value)
- return TRUSTED_NULL_VALUE;
+ return ValueState::TRUSTED_NULL_VALUE;
else if (super_mac_valid_)
- return TRUSTED_UNKNOWN_VALUE;
+ return ValueState::TRUSTED_UNKNOWN_VALUE;
else
- return UNTRUSTED_UNKNOWN_VALUE;
+ return ValueState::UNTRUSTED_UNKNOWN_VALUE;
}
PrefHashCalculator::ValidationResult validation_result =
outer_->pref_hash_calculator_.Validate(path, initial_value, last_hash);
switch (validation_result) {
case PrefHashCalculator::VALID:
- return UNCHANGED;
+ return ValueState::UNCHANGED;
case PrefHashCalculator::VALID_SECURE_LEGACY:
- return SECURE_LEGACY;
+ return ValueState::SECURE_LEGACY;
case PrefHashCalculator::INVALID:
- return initial_value ? CHANGED : CLEARED;
+ return initial_value ? ValueState::CHANGED : ValueState::CLEARED;
}
NOTREACHED() << "Unexpected PrefHashCalculator::ValidationResult: "
<< validation_result;
- return UNTRUSTED_UNKNOWN_VALUE;
+ return ValueState::UNTRUSTED_UNKNOWN_VALUE;
}
void PrefHashStoreImpl::PrefHashStoreTransactionImpl::StoreHash(
@@ -195,8 +196,7 @@ void PrefHashStoreImpl::PrefHashStoreTransactionImpl::StoreHash(
super_mac_dirty_ = true;
}
-PrefHashStoreTransaction::ValueState
-PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckSplitValue(
+ValueState PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckSplitValue(
const std::string& path,
const base::DictionaryValue* initial_split_value,
std::vector<std::string>* invalid_keys) const {
@@ -209,10 +209,11 @@ PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckSplitValue(
// the entire dictionary (or some other special beacon) to differentiate these
// two cases which are really the same for dictionaries.
if (!initial_split_value || initial_split_value->empty())
- return has_hashes ? CLEARED : UNCHANGED;
+ return has_hashes ? ValueState::CLEARED : ValueState::UNCHANGED;
if (!has_hashes)
- return super_mac_valid_ ? TRUSTED_UNKNOWN_VALUE : UNTRUSTED_UNKNOWN_VALUE;
+ return super_mac_valid_ ? ValueState::TRUSTED_UNKNOWN_VALUE
+ : ValueState::UNTRUSTED_UNKNOWN_VALUE;
bool has_secure_legacy_id_hashes = false;
std::string keyed_path(path);
@@ -232,7 +233,7 @@ PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckSplitValue(
entry->second)) {
case PrefHashCalculator::VALID:
break;
- case SECURE_LEGACY:
+ case PrefHashCalculator::VALID_SECURE_LEGACY:
// Secure legacy device IDs based hashes are still accepted, but we
// should make sure to notify the caller for them to update the legacy
// hashes.
@@ -256,8 +257,9 @@ PrefHashStoreImpl::PrefHashStoreTransactionImpl::CheckSplitValue(
}
return invalid_keys->empty()
- ? (has_secure_legacy_id_hashes ? SECURE_LEGACY : UNCHANGED)
- : CHANGED;
+ ? (has_secure_legacy_id_hashes ? ValueState::SECURE_LEGACY
+ : ValueState::UNCHANGED)
+ : ValueState::CHANGED;
}
void PrefHashStoreImpl::PrefHashStoreTransactionImpl::StoreSplitHash(
« no previous file with comments | « services/preferences/tracked/pref_hash_store_impl.h ('k') | services/preferences/tracked/pref_hash_store_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698