Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / sync / protocol / proto_value_conversions.cc
index be63942..1358420 100644 (file)
@@ -36,6 +36,7 @@
 #include "sync/protocol/search_engine_specifics.pb.h"
 #include "sync/protocol/session_specifics.pb.h"
 #include "sync/protocol/sync.pb.h"
+#include "sync/protocol/synced_notification_app_info_specifics.pb.h"
 #include "sync/protocol/synced_notification_specifics.pb.h"
 #include "sync/protocol/theme_specifics.pb.h"
 #include "sync/protocol/typed_url_specifics.pb.h"
@@ -203,6 +204,7 @@ base::DictionaryValue* TabNavigationToValue(
   SET_STR_REP(content_pack_categories);
   SET_INT32(http_status_code);
   SET_INT32(referrer_policy);
+  SET_BOOL(is_restored);
   return value;
 }
 
@@ -241,6 +243,16 @@ base::DictionaryValue* TimeRangeDirectiveToValue(
   return value;
 }
 
+base::DictionaryValue* SyncedNotificationAppInfoToValue(
+    const sync_pb::SyncedNotificationAppInfo& proto) {
+  base::DictionaryValue* value = new base::DictionaryValue();
+  SET_STR_REP(app_id);
+  SET_STR(settings_display_name);
+  SET(icon, SyncedNotificationImageToValue);
+  // TODO(petewil): Add fields for the monochrome icon when it is available.
+  return value;
+}
+
 base::DictionaryValue* SyncedNotificationImageToValue(
     const sync_pb::SyncedNotificationImage& proto) {
   base::DictionaryValue* value = new base::DictionaryValue();
@@ -488,8 +500,9 @@ base::DictionaryValue* ExperimentsSpecificsToValue(
   SET_EXPERIMENT_ENABLED_FIELD(history_delete_directives);
   SET_EXPERIMENT_ENABLED_FIELD(autofill_culling);
   SET_EXPERIMENT_ENABLED_FIELD(pre_commit_update_avoidance);
-  if (proto.has_favicon_sync())
-    SET(favicon_sync, FaviconSyncFlagsToValue);
+  SET(favicon_sync, FaviconSyncFlagsToValue);
+  SET_EXPERIMENT_ENABLED_FIELD(gcm_channel);
+  SET_EXPERIMENT_ENABLED_FIELD(enhanced_bookmarks);
   return value;
 }
 
@@ -650,6 +663,13 @@ base::DictionaryValue* PriorityPreferenceSpecificsToValue(
   return value;
 }
 
+base::DictionaryValue* SyncedNotificationAppInfoSpecificsToValue(
+    const sync_pb::SyncedNotificationAppInfoSpecifics& proto) {
+  base::DictionaryValue* value = new base::DictionaryValue();
+  SET_REP(synced_notification_app_info, SyncedNotificationAppInfoToValue);
+  return value;
+}
+
 base::DictionaryValue* SyncedNotificationSpecificsToValue(
     const sync_pb::SyncedNotificationSpecifics& proto) {
   // There is a lot of data, for now just use heading, description, key, and
@@ -751,6 +771,8 @@ base::DictionaryValue* EntitySpecificsToValue(
   SET_FIELD(search_engine, SearchEngineSpecificsToValue);
   SET_FIELD(session, SessionSpecificsToValue);
   SET_FIELD(synced_notification, SyncedNotificationSpecificsToValue);
+  SET_FIELD(synced_notification_app_info,
+            SyncedNotificationAppInfoSpecificsToValue);
   SET_FIELD(theme, ThemeSpecificsToValue);
   SET_FIELD(typed_url, TypedUrlSpecificsToValue);
   return value;
@@ -1030,8 +1052,7 @@ base::DictionaryValue* ClientConfigParamsToValue(
   return value;
 }
 
-base::DictionaryValue* SyncAttachmentIdToValue(
-    const sync_pb::SyncAttachmentId& proto) {
+base::DictionaryValue* AttachmentIdToValue(const sync_pb::AttachmentId& proto) {
   base::DictionaryValue* value = new base::DictionaryValue();
   SET_STR(unique_id);
   return value;