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

Unified Diff: chrome/browser/sync/engine/download_updates_command.cc

Issue 8772074: [Sync] Convert syncable/ directory to ModelEnumSet (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Sync to head, and fix compile errors Created 9 years 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
Index: chrome/browser/sync/engine/download_updates_command.cc
diff --git a/chrome/browser/sync/engine/download_updates_command.cc b/chrome/browser/sync/engine/download_updates_command.cc
index e712d9edb852c24ceea5289f526f0ae037053304..b2bcccc5ae2d4566d1ef48a2ac4df8b0ebeda9bc 100644
--- a/chrome/browser/sync/engine/download_updates_command.cc
+++ b/chrome/browser/sync/engine/download_updates_command.cc
@@ -24,6 +24,8 @@ using sessions::SyncSession;
using std::string;
using syncable::FIRST_REAL_MODEL_TYPE;
using syncable::MODEL_TYPE_COUNT;
+using syncable::ModelEnumSet;
+using syncable::ModelEnumSetToString;
DownloadUpdatesCommand::DownloadUpdatesCommand() {}
DownloadUpdatesCommand::~DownloadUpdatesCommand() {}
@@ -50,28 +52,28 @@ void DownloadUpdatesCommand::ExecuteImpl(SyncSession* session) {
}
// Request updates for all enabled types.
- syncable::ModelTypeBitSet enabled_types;
+ const ModelEnumSet enabled_types =
+ GetRoutingInfoTypes(session->routing_info());
+ DVLOG(1) << "Getting updates for types "
+ << ModelEnumSetToString(enabled_types);
+ DCHECK(!enabled_types.Empty());
+
const syncable::ModelTypePayloadMap& type_payload_map =
session->source().types;
- for (ModelSafeRoutingInfo::const_iterator i = session->routing_info().begin();
- i != session->routing_info().end(); ++i) {
- syncable::ModelType model_type = syncable::ModelTypeFromInt(i->first);
- enabled_types[i->first] = true;
+ for (ModelEnumSet::Iterator it = enabled_types.First();
+ it.Good(); it.Inc()) {
sync_pb::DataTypeProgressMarker* progress_marker =
get_updates->add_from_progress_marker();
- dir->GetDownloadProgress(model_type, progress_marker);
+ dir->GetDownloadProgress(it.Get(), progress_marker);
// Set notification hint if present.
syncable::ModelTypePayloadMap::const_iterator type_payload =
- type_payload_map.find(i->first);
+ type_payload_map.find(it.Get());
if (type_payload != type_payload_map.end()) {
progress_marker->set_notification_hint(type_payload->second);
}
}
- DVLOG(1) << "Getting updates for types " << enabled_types.to_string();
- DCHECK(enabled_types.any());
-
// We want folders for our associated types, always. If we were to set
// this to false, the server would send just the non-container items
// (e.g. Bookmark URLs but not their containing folders).

Powered by Google App Engine
This is Rietveld 408576698