Index: chrome/browser/sync/util/cryptographer.cc |
diff --git a/chrome/browser/sync/util/cryptographer.cc b/chrome/browser/sync/util/cryptographer.cc |
index 59e96103ba71c56891b7dc3a0baf41e69f35a40a..0f04a01d033963a781aa4688e11edb59f9604014 100644 |
--- a/chrome/browser/sync/util/cryptographer.cc |
+++ b/chrome/browser/sync/util/cryptographer.cc |
@@ -22,10 +22,8 @@ Cryptographer::Observer::~Observer() {} |
Cryptographer::Cryptographer() |
: default_nigori_(NULL), |
- encrypt_everything_(false) { |
- syncable::ModelTypeSet sensitive_types = SensitiveTypes(); |
- encrypted_types_.insert(sensitive_types.begin(), sensitive_types.end()); |
-} |
+ encrypted_types_(SensitiveTypes()), |
+ encrypt_everything_(false) {} |
Cryptographer::~Cryptographer() {} |
@@ -275,12 +273,12 @@ Cryptographer::UpdateResult Cryptographer::Update( |
} |
// Static |
-syncable::ModelTypeSet Cryptographer::SensitiveTypes() { |
- syncable::ModelTypeSet types; |
+syncable::ModelEnumSet Cryptographer::SensitiveTypes() { |
// Both of these have their own encryption schemes, but we include them |
// anyways. |
- types.insert(syncable::PASSWORDS); |
- types.insert(syncable::NIGORI); |
+ syncable::ModelEnumSet types; |
+ types.Put(syncable::PASSWORDS); |
+ types.Put(syncable::NIGORI); |
return types; |
} |
@@ -291,39 +289,39 @@ void Cryptographer::UpdateEncryptedTypesFromNigori( |
return; |
} |
- syncable::ModelTypeSet encrypted_types(SensitiveTypes()); |
+ syncable::ModelEnumSet encrypted_types(SensitiveTypes()); |
if (nigori.encrypt_bookmarks()) |
- encrypted_types.insert(syncable::BOOKMARKS); |
+ encrypted_types.Put(syncable::BOOKMARKS); |
if (nigori.encrypt_preferences()) |
- encrypted_types.insert(syncable::PREFERENCES); |
+ encrypted_types.Put(syncable::PREFERENCES); |
if (nigori.encrypt_autofill_profile()) |
- encrypted_types.insert(syncable::AUTOFILL_PROFILE); |
+ encrypted_types.Put(syncable::AUTOFILL_PROFILE); |
if (nigori.encrypt_autofill()) |
- encrypted_types.insert(syncable::AUTOFILL); |
+ encrypted_types.Put(syncable::AUTOFILL); |
if (nigori.encrypt_themes()) |
- encrypted_types.insert(syncable::THEMES); |
+ encrypted_types.Put(syncable::THEMES); |
if (nigori.encrypt_typed_urls()) |
- encrypted_types.insert(syncable::TYPED_URLS); |
+ encrypted_types.Put(syncable::TYPED_URLS); |
if (nigori.encrypt_extension_settings()) |
- encrypted_types.insert(syncable::EXTENSION_SETTINGS); |
+ encrypted_types.Put(syncable::EXTENSION_SETTINGS); |
if (nigori.encrypt_extensions()) |
- encrypted_types.insert(syncable::EXTENSIONS); |
+ encrypted_types.Put(syncable::EXTENSIONS); |
if (nigori.encrypt_search_engines()) |
- encrypted_types.insert(syncable::SEARCH_ENGINES); |
+ encrypted_types.Put(syncable::SEARCH_ENGINES); |
if (nigori.encrypt_sessions()) |
- encrypted_types.insert(syncable::SESSIONS); |
+ encrypted_types.Put(syncable::SESSIONS); |
if (nigori.encrypt_app_settings()) |
- encrypted_types.insert(syncable::APP_SETTINGS); |
+ encrypted_types.Put(syncable::APP_SETTINGS); |
if (nigori.encrypt_apps()) |
- encrypted_types.insert(syncable::APPS); |
+ encrypted_types.Put(syncable::APPS); |
if (nigori.encrypt_app_notifications()) |
- encrypted_types.insert(syncable::APP_NOTIFICATIONS); |
+ encrypted_types.Put(syncable::APP_NOTIFICATIONS); |
// Note: the initial version with encryption did not support the |
// encrypt_everything field. If anything more than the sensitive types were |
// encrypted, it meant we were encrypting everything. |
if (!nigori.has_encrypt_everything() && |
- encrypted_types.size() > SensitiveTypes().size()) { |
+ !Difference(encrypted_types, SensitiveTypes()).Empty()) { |
set_encrypt_everything(); |
return; |
} |
@@ -335,38 +333,38 @@ void Cryptographer::UpdateNigoriFromEncryptedTypes( |
sync_pb::NigoriSpecifics* nigori) const { |
nigori->set_encrypt_everything(encrypt_everything_); |
nigori->set_encrypt_bookmarks( |
- encrypted_types_.count(syncable::BOOKMARKS) > 0); |
+ encrypted_types_.Has(syncable::BOOKMARKS)); |
nigori->set_encrypt_preferences( |
- encrypted_types_.count(syncable::PREFERENCES) > 0); |
+ encrypted_types_.Has(syncable::PREFERENCES)); |
nigori->set_encrypt_autofill_profile( |
- encrypted_types_.count(syncable::AUTOFILL_PROFILE) > 0); |
- nigori->set_encrypt_autofill(encrypted_types_.count(syncable::AUTOFILL) > 0); |
- nigori->set_encrypt_themes(encrypted_types_.count(syncable::THEMES) > 0); |
+ encrypted_types_.Has(syncable::AUTOFILL_PROFILE)); |
+ nigori->set_encrypt_autofill(encrypted_types_.Has(syncable::AUTOFILL)); |
+ nigori->set_encrypt_themes(encrypted_types_.Has(syncable::THEMES)); |
nigori->set_encrypt_typed_urls( |
- encrypted_types_.count(syncable::TYPED_URLS) > 0); |
+ encrypted_types_.Has(syncable::TYPED_URLS)); |
nigori->set_encrypt_extension_settings( |
- encrypted_types_.count(syncable::EXTENSION_SETTINGS) > 0); |
+ encrypted_types_.Has(syncable::EXTENSION_SETTINGS)); |
nigori->set_encrypt_extensions( |
- encrypted_types_.count(syncable::EXTENSIONS) > 0); |
+ encrypted_types_.Has(syncable::EXTENSIONS)); |
nigori->set_encrypt_search_engines( |
- encrypted_types_.count(syncable::SEARCH_ENGINES) > 0); |
- nigori->set_encrypt_sessions(encrypted_types_.count(syncable::SESSIONS) > 0); |
+ encrypted_types_.Has(syncable::SEARCH_ENGINES)); |
+ nigori->set_encrypt_sessions(encrypted_types_.Has(syncable::SESSIONS)); |
nigori->set_encrypt_app_settings( |
- encrypted_types_.count(syncable::APP_SETTINGS) > 0); |
- nigori->set_encrypt_apps(encrypted_types_.count(syncable::APPS) > 0); |
+ encrypted_types_.Has(syncable::APP_SETTINGS)); |
+ nigori->set_encrypt_apps(encrypted_types_.Has(syncable::APPS)); |
nigori->set_encrypt_app_notifications( |
- encrypted_types_.count(syncable::APP_NOTIFICATIONS) > 0); |
+ encrypted_types_.Has(syncable::APP_NOTIFICATIONS)); |
} |
void Cryptographer::set_encrypt_everything() { |
if (encrypt_everything_) { |
- DCHECK(encrypted_types_ == syncable::GetAllRealModelTypes()); |
+ DCHECK(encrypted_types_.Equals(syncable::ModelEnumSet::All())); |
return; |
} |
encrypt_everything_ = true; |
// Change |encrypted_types_| directly to avoid sending more than one |
// notification. |
- encrypted_types_ = syncable::GetAllRealModelTypes(); |
+ encrypted_types_ = syncable::ModelEnumSet::All(); |
EmitEncryptedTypesChangedNotification(); |
} |
@@ -374,19 +372,18 @@ bool Cryptographer::encrypt_everything() const { |
return encrypt_everything_; |
} |
-syncable::ModelTypeSet Cryptographer::GetEncryptedTypes() const { |
+syncable::ModelEnumSet Cryptographer::GetEncryptedTypes() const { |
return encrypted_types_; |
} |
void Cryptographer::MergeEncryptedTypesForTest( |
- const syncable::ModelTypeSet& encrypted_types) { |
+ syncable::ModelEnumSet encrypted_types) { |
MergeEncryptedTypes(encrypted_types); |
} |
void Cryptographer::MergeEncryptedTypes( |
- const syncable::ModelTypeSet& encrypted_types) { |
- if (std::includes(encrypted_types_.begin(), encrypted_types_.end(), |
- encrypted_types.begin(), encrypted_types.end())) { |
+ syncable::ModelEnumSet encrypted_types) { |
+ if (encrypted_types_.HasAll(encrypted_types)) { |
return; |
} |
encrypted_types_ = encrypted_types; |