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

Unified Diff: sync/syncable/model_type.cc

Issue 10985008: sync: Add DeviceInfo protobuf and supporting code (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Another missing include Created 8 years, 2 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
« no previous file with comments | « sync/protocol/sync_proto.gyp ('k') | sync/util/data_type_histogram.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sync/syncable/model_type.cc
diff --git a/sync/syncable/model_type.cc b/sync/syncable/model_type.cc
index 1674206c294344cf2a13bbfdb6d3ea1370721fa6..e4993a47017f3a739a07d1a522438e1bea6be43f 100644
--- a/sync/syncable/model_type.cc
+++ b/sync/syncable/model_type.cc
@@ -73,6 +73,9 @@ void AddDefaultFieldValue(ModelType datatype,
case APP_NOTIFICATIONS:
specifics->mutable_app_notification();
break;
+ case DEVICE_INFO:
+ specifics->mutable_device_info();
+ break;
default:
NOTREACHED() << "No known extension for model type.";
}
@@ -135,6 +138,9 @@ int GetSpecificsFieldNumberFromModelType(ModelType model_type) {
case APP_NOTIFICATIONS:
return sync_pb::EntitySpecifics::kAppNotificationFieldNumber;
break;
+ case DEVICE_INFO:
+ return sync_pb::EntitySpecifics::kDeviceInfoFieldNumber;
+ break;
default:
NOTREACHED() << "No known extension for model type.";
return 0;
@@ -227,6 +233,9 @@ ModelType GetModelTypeFromSpecifics(const sync_pb::EntitySpecifics& specifics) {
if (specifics.has_app_notification())
return APP_NOTIFICATIONS;
+ if (specifics.has_device_info())
+ return DEVICE_INFO;
+
return UNSPECIFIED;
}
@@ -247,6 +256,10 @@ ModelTypeSet ControlTypes() {
for (int i = FIRST_CONTROL_MODEL_TYPE; i <= LAST_CONTROL_MODEL_TYPE; ++i) {
set.Put(ModelTypeFromInt(i));
}
+
+ // TODO(rlarocque): Re-enable this when the server supports it.
+ set.Remove(DEVICE_INFO);
+
return set;
}
@@ -293,6 +306,8 @@ const char* ModelTypeToString(ModelType model_type) {
return "Extension settings";
case APP_NOTIFICATIONS:
return "App Notifications";
+ case DEVICE_INFO:
+ return "Device Info";
default:
break;
}
@@ -358,6 +373,8 @@ ModelType ModelTypeFromString(const std::string& model_type_string) {
return EXTENSION_SETTINGS;
else if (model_type_string == "App Notifications")
return APP_NOTIFICATIONS;
+ else if (model_type_string == "Device Info")
+ return DEVICE_INFO;
else
NOTREACHED() << "No known model type corresponding to "
<< model_type_string << ".";
@@ -426,6 +443,8 @@ std::string ModelTypeToRootTag(ModelType type) {
return "google_chrome_extension_settings";
case APP_NOTIFICATIONS:
return "google_chrome_app_notifications";
+ case DEVICE_INFO:
+ return "google_chrome_device_info";
default:
break;
}
@@ -451,6 +470,7 @@ const char kSearchEngineNotificationType[] = "SEARCH_ENGINE";
const char kSessionNotificationType[] = "SESSION";
const char kAutofillProfileNotificationType[] = "AUTOFILL_PROFILE";
const char kAppNotificationNotificationType[] = "APP_NOTIFICATION";
+const char kDeviceInfoNotificationType[] = "DEVICE_INFO";
} // namespace
bool RealModelTypeToNotificationType(ModelType model_type,
@@ -501,6 +521,9 @@ bool RealModelTypeToNotificationType(ModelType model_type,
case APP_NOTIFICATIONS:
*notification_type = kAppNotificationNotificationType;
return true;
+ case DEVICE_INFO:
+ *notification_type = kDeviceInfoNotificationType;
+ return true;
default:
break;
}
@@ -555,6 +578,9 @@ bool NotificationTypeToRealModelType(const std::string& notification_type,
} else if (notification_type == kAppNotificationNotificationType) {
*model_type = APP_NOTIFICATIONS;
return true;
+ } else if (notification_type == kDeviceInfoNotificationType) {
+ *model_type = DEVICE_INFO;;
+ return true;
} else {
*model_type = UNSPECIFIED;
return false;
« no previous file with comments | « sync/protocol/sync_proto.gyp ('k') | sync/util/data_type_histogram.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698