Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / sync / internal_api / sync_manager_impl.cc
index accb7f2..59c0f3a 100644 (file)
@@ -913,7 +913,7 @@ void SyncManagerImpl::RequestNudgeForDataTypes(
                                  nudge_location);
 }
 
-void SyncManagerImpl::OnSyncEngineEvent(const SyncEngineEvent& event) {
+void SyncManagerImpl::OnSyncCycleEvent(const SyncCycleEvent& event) {
   DCHECK(thread_checker_.CalledOnValidThread());
   // Only send an event if this is due to a cycle ending and this cycle
   // concludes a canonical "sync" process; that is, based on what is known
@@ -922,7 +922,7 @@ void SyncManagerImpl::OnSyncEngineEvent(const SyncEngineEvent& event) {
   //
   // Notifications are sent at the end of every sync cycle, regardless of
   // whether we should sync again.
-  if (event.what_happened == SyncEngineEvent::SYNC_CYCLE_ENDED) {
+  if (event.what_happened == SyncCycleEvent::SYNC_CYCLE_ENDED) {
     if (!initialized_) {
       DVLOG(1) << "OnSyncCycleCompleted not sent because sync api is not "
                << "initialized";
@@ -933,20 +933,22 @@ void SyncManagerImpl::OnSyncEngineEvent(const SyncEngineEvent& event) {
     FOR_EACH_OBSERVER(SyncManager::Observer, observers_,
                       OnSyncCycleCompleted(event.snapshot));
   }
+}
 
-  if (event.what_happened == SyncEngineEvent::STOP_SYNCING_PERMANENTLY) {
-    FOR_EACH_OBSERVER(SyncManager::Observer, observers_,
-                      OnStopSyncingPermanently());
-    return;
-  }
+void SyncManagerImpl::OnActionableError(const SyncProtocolError& error) {
+  FOR_EACH_OBSERVER(
+      SyncManager::Observer, observers_,
+      OnActionableError(error));
+}
 
-  if (event.what_happened == SyncEngineEvent::ACTIONABLE_ERROR) {
-    FOR_EACH_OBSERVER(
-        SyncManager::Observer, observers_,
-        OnActionableError(
-            event.snapshot.model_neutral_state().sync_protocol_error));
-    return;
-  }
+void SyncManagerImpl::OnRetryTimeChanged(base::Time) {}
+
+void SyncManagerImpl::OnThrottledTypesChanged(ModelTypeSet) {}
+
+void SyncManagerImpl::OnMigrationRequested(ModelTypeSet types) {
+  FOR_EACH_OBSERVER(
+      SyncManager::Observer, observers_,
+      OnMigrationRequested(types));
 }
 
 void SyncManagerImpl::SetJsEventHandler(
@@ -1193,16 +1195,6 @@ bool SyncManagerImpl::ReceivedExperiment(Experiments* experiments) {
   }
   bool found_experiment = false;
 
-  ReadNode autofill_culling_node(&trans);
-  if (autofill_culling_node.InitByClientTagLookup(
-          syncer::EXPERIMENTS,
-          syncer::kAutofillCullingTag) == BaseNode::INIT_OK &&
-      autofill_culling_node.GetExperimentsSpecifics().
-          autofill_culling().enabled()) {
-    experiments->autofill_culling = true;
-    found_experiment = true;
-  }
-
   ReadNode favicon_sync_node(&trans);
   if (favicon_sync_node.InitByClientTagLookup(
           syncer::EXPERIMENTS,
@@ -1224,6 +1216,34 @@ bool SyncManagerImpl::ReceivedExperiment(Experiments* experiments) {
     // know about this.
   }
 
+  ReadNode gcm_channel_node(&trans);
+  if (gcm_channel_node.InitByClientTagLookup(
+          syncer::EXPERIMENTS,
+          syncer::kGCMChannelTag) == BaseNode::INIT_OK &&
+      gcm_channel_node.GetExperimentsSpecifics().gcm_channel().has_enabled()) {
+    experiments->gcm_channel_state =
+        (gcm_channel_node.GetExperimentsSpecifics().gcm_channel().enabled() ?
+         syncer::Experiments::ENABLED : syncer::Experiments::SUPPRESSED);
+    found_experiment = true;
+  }
+
+  ReadNode enhanced_bookmarks_node(&trans);
+  if (enhanced_bookmarks_node.InitByClientTagLookup(
+          syncer::EXPERIMENTS, syncer::kEnhancedBookmarksTag) ==
+          BaseNode::INIT_OK &&
+      enhanced_bookmarks_node.GetExperimentsSpecifics()
+          .has_enhanced_bookmarks()) {
+    const sync_pb::EnhancedBookmarksFlags& enhanced_bookmarks =
+        enhanced_bookmarks_node.GetExperimentsSpecifics().enhanced_bookmarks();
+    if (enhanced_bookmarks.has_enabled())
+      experiments->enhanced_bookmarks_enabled = enhanced_bookmarks.enabled();
+    if (enhanced_bookmarks.has_extension_id()) {
+      experiments->enhanced_bookmarks_ext_id =
+          enhanced_bookmarks.extension_id();
+    }
+    found_experiment = true;
+  }
+
   return found_experiment;
 }