diff options
author | bauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-19 03:28:07 +0000 |
---|---|---|
committer | bauerb@chromium.org <bauerb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-19 03:28:07 +0000 |
commit | de002cb39af0edd9512e9ee4df11b18e719b3d23 (patch) | |
tree | b3d1277834fd4be89da5dc27880b8c43c454bb1b /sync/syncable | |
parent | d37601c8c9096c4f185067b3e5f54d1ae001108b (diff) | |
download | chromium_src-de002cb39af0edd9512e9ee4df11b18e719b3d23.zip chromium_src-de002cb39af0edd9512e9ee4df11b18e719b3d23.tar.gz chromium_src-de002cb39af0edd9512e9ee4df11b18e719b3d23.tar.bz2 |
Add Sync datatype for shared managed user settings.
BUG=316168
Review URL: https://codereview.chromium.org/76333002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241779 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/syncable')
-rw-r--r-- | sync/syncable/model_type.cc | 27 | ||||
-rw-r--r-- | sync/syncable/nigori_util.cc | 4 |
2 files changed, 29 insertions, 2 deletions
diff --git a/sync/syncable/model_type.cc b/sync/syncable/model_type.cc index fa33118..ecc62fe 100644 --- a/sync/syncable/model_type.cc +++ b/sync/syncable/model_type.cc @@ -110,6 +110,9 @@ void AddDefaultFieldValue(ModelType datatype, case MANAGED_USERS: specifics->mutable_managed_user(); break; + case MANAGED_USER_SHARED_SETTINGS: + specifics->mutable_managed_user_shared_setting(); + break; case ARTICLES: specifics->mutable_article(); break; @@ -206,6 +209,8 @@ int GetSpecificsFieldNumberFromModelType(ModelType model_type) { return sync_pb::EntitySpecifics::kManagedUserSettingFieldNumber; case MANAGED_USERS: return sync_pb::EntitySpecifics::kManagedUserFieldNumber; + case MANAGED_USER_SHARED_SETTINGS: + return sync_pb::EntitySpecifics::kManagedUserSharedSettingFieldNumber; case ARTICLES: return sync_pb::EntitySpecifics::kArticleFieldNumber; default: @@ -330,6 +335,9 @@ ModelType GetModelTypeFromSpecifics(const sync_pb::EntitySpecifics& specifics) { if (specifics.has_managed_user()) return MANAGED_USERS; + if (specifics.has_managed_user_shared_setting()) + return MANAGED_USER_SHARED_SETTINGS; + if (specifics.has_article()) return ARTICLES; @@ -386,6 +394,9 @@ ModelTypeSet EncryptableUserTypes() { encryptable_user_types.Remove(MANAGED_USER_SETTINGS); // Managed users are not encrypted since they are managed server-side. encryptable_user_types.Remove(MANAGED_USERS); + // Managed user shared settings are not encrypted since they are managed + // server-side and shared between manager and supervised user. + encryptable_user_types.Remove(MANAGED_USER_SHARED_SETTINGS); // Proxy types have no sync representation and are therefore not encrypted. // Note however that proxy types map to one or more protocol types, which // may or may not be encrypted themselves. @@ -500,6 +511,8 @@ const char* ModelTypeToString(ModelType model_type) { return "Managed User Settings"; case MANAGED_USERS: return "Managed Users"; + case MANAGED_USER_SHARED_SETTINGS: + return "Managed User Shared Settings"; case ARTICLES: return "Articles"; case PROXY_TABS: @@ -577,6 +590,8 @@ int ModelTypeToHistogramInt(ModelType model_type) { return 28; case APP_LIST: return 29; + case MANAGED_USER_SHARED_SETTINGS: + return 30; // Silence a compiler warning. case MODEL_TYPE_COUNT: return 0; @@ -664,6 +679,8 @@ ModelType ModelTypeFromString(const std::string& model_type_string) { return MANAGED_USER_SETTINGS; else if (model_type_string == "Managed Users") return MANAGED_USERS; + else if (model_type_string == "Managed User Shared Settings") + return MANAGED_USER_SHARED_SETTINGS; else if (model_type_string == "Articles") return ARTICLES; else if (model_type_string == "Tabs") @@ -760,6 +777,8 @@ std::string ModelTypeToRootTag(ModelType type) { return "google_chrome_managed_user_settings"; case MANAGED_USERS: return "google_chrome_managed_users"; + case MANAGED_USER_SHARED_SETTINGS: + return "google_chrome_managed_user_shared_settings"; case ARTICLES: return "google_chrome_articles"; case PROXY_TABS: @@ -802,6 +821,8 @@ const char kFaviconImageNotificationType[] = "FAVICON_IMAGE"; const char kFaviconTrackingNotificationType[] = "FAVICON_TRACKING"; const char kManagedUserSettingNotificationType[] = "MANAGED_USER_SETTING"; const char kManagedUserNotificationType[] = "MANAGED_USER"; +const char kManagedUserSharedSettingNotificationType[] = + "MANAGED_USER_SHARED_SETTING"; const char kArticleNotificationType[] = "ARTICLE"; } // namespace @@ -886,6 +907,9 @@ bool RealModelTypeToNotificationType(ModelType model_type, case MANAGED_USERS: *notification_type = kManagedUserNotificationType; return true; + case MANAGED_USER_SHARED_SETTINGS: + *notification_type = kManagedUserSharedSettingNotificationType; + return true; case ARTICLES: *notification_type = kArticleNotificationType; return true; @@ -976,6 +1000,9 @@ bool NotificationTypeToRealModelType(const std::string& notification_type, } else if (notification_type == kManagedUserNotificationType) { *model_type = MANAGED_USERS; return true; + } else if (notification_type == kManagedUserSharedSettingNotificationType) { + *model_type = MANAGED_USER_SHARED_SETTINGS; + return true; } else if (notification_type == kArticleNotificationType) { *model_type = ARTICLES; return true; diff --git a/sync/syncable/nigori_util.cc b/sync/syncable/nigori_util.cc index 107a68f..af0545e 100644 --- a/sync/syncable/nigori_util.cc +++ b/sync/syncable/nigori_util.cc @@ -242,7 +242,7 @@ void UpdateNigoriFromEncryptedTypes(ModelTypeSet encrypted_types, bool encrypt_everything, sync_pb::NigoriSpecifics* nigori) { nigori->set_encrypt_everything(encrypt_everything); - COMPILE_ASSERT(30 == MODEL_TYPE_COUNT, UpdateEncryptedTypes); + COMPILE_ASSERT(31 == MODEL_TYPE_COUNT, UpdateEncryptedTypes); nigori->set_encrypt_bookmarks( encrypted_types.Has(BOOKMARKS)); nigori->set_encrypt_preferences( @@ -278,7 +278,7 @@ ModelTypeSet GetEncryptedTypesFromNigori( return ModelTypeSet::All(); ModelTypeSet encrypted_types; - COMPILE_ASSERT(30 == MODEL_TYPE_COUNT, UpdateEncryptedTypes); + COMPILE_ASSERT(31 == MODEL_TYPE_COUNT, UpdateEncryptedTypes); if (nigori.encrypt_bookmarks()) encrypted_types.Put(BOOKMARKS); if (nigori.encrypt_preferences()) |