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

Side by Side Diff: chrome/browser/sync/engine/syncer_proto_util.cc

Issue 8638001: [Sync] Made some sync session member functions const (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix latent bug in StatusController Created 9 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/sync/engine/syncer_proto_util.h" 5 #include "chrome/browser/sync/engine/syncer_proto_util.h"
6 6
7 #include "base/format_macros.h" 7 #include "base/format_macros.h"
8 #include "base/stringprintf.h" 8 #include "base/stringprintf.h"
9 #include "chrome/browser/sync/engine/net/server_connection_manager.h" 9 #include "chrome/browser/sync/engine/net/server_connection_manager.h"
10 #include "chrome/browser/sync/engine/syncer.h" 10 #include "chrome/browser/sync/engine/syncer.h"
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 const sync_pb::ClientToServerResponse* response, 86 const sync_pb::ClientToServerResponse* response,
87 sessions::SyncSession* session) { 87 sessions::SyncSession* session) {
88 LOG_IF(ERROR, 0 >= response->migrated_data_type_id_size()) 88 LOG_IF(ERROR, 0 >= response->migrated_data_type_id_size())
89 << "MIGRATION_DONE but no types specified."; 89 << "MIGRATION_DONE but no types specified.";
90 syncable::ModelTypeSet to_migrate; 90 syncable::ModelTypeSet to_migrate;
91 for (int i = 0; i < response->migrated_data_type_id_size(); i++) { 91 for (int i = 0; i < response->migrated_data_type_id_size(); i++) {
92 to_migrate.insert(syncable::GetModelTypeFromExtensionFieldNumber( 92 to_migrate.insert(syncable::GetModelTypeFromExtensionFieldNumber(
93 response->migrated_data_type_id(i))); 93 response->migrated_data_type_id(i)));
94 } 94 }
95 // TODO(akalin): This should be a set union. 95 // TODO(akalin): This should be a set union.
96 session->status_controller()->set_types_needing_local_migration(to_migrate); 96 session->mutable_status_controller()->
97 set_types_needing_local_migration(to_migrate);
97 } 98 }
98 99
99 // static 100 // static
100 bool SyncerProtoUtil::VerifyResponseBirthday(syncable::Directory* dir, 101 bool SyncerProtoUtil::VerifyResponseBirthday(syncable::Directory* dir,
101 const ClientToServerResponse* response) { 102 const ClientToServerResponse* response) {
102 103
103 std::string local_birthday = dir->store_birthday(); 104 std::string local_birthday = dir->store_birthday();
104 105
105 if (local_birthday.empty()) { 106 if (local_birthday.empty()) {
106 if (!response->has_store_birthday()) { 107 if (!response->has_store_birthday()) {
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 } else if (response->has_error()) { 307 } else if (response->has_error()) {
307 // This is a new server. Just get the error from the protocol. 308 // This is a new server. Just get the error from the protocol.
308 sync_protocol_error = ConvertErrorPBToLocalType(response->error()); 309 sync_protocol_error = ConvertErrorPBToLocalType(response->error());
309 } else { 310 } else {
310 // Legacy server implementation. Compute the error based on |error_code|. 311 // Legacy server implementation. Compute the error based on |error_code|.
311 sync_protocol_error = ConvertLegacyErrorCodeToNewError( 312 sync_protocol_error = ConvertLegacyErrorCodeToNewError(
312 response->error_code()); 313 response->error_code());
313 } 314 }
314 315
315 // Now set the error into the status so the layers above us could read it. 316 // Now set the error into the status so the layers above us could read it.
316 sessions::StatusController* status = session->status_controller(); 317 sessions::StatusController* status = session->mutable_status_controller();
317 status->set_sync_protocol_error(sync_protocol_error); 318 status->set_sync_protocol_error(sync_protocol_error);
318 319
319 // Inform the delegate of the error we got. 320 // Inform the delegate of the error we got.
320 session->delegate()->OnSyncProtocolError(session->TakeSnapshot()); 321 session->delegate()->OnSyncProtocolError(session->TakeSnapshot());
321 322
322 // Now do any special handling for the error type and decide on the return 323 // Now do any special handling for the error type and decide on the return
323 // value. 324 // value.
324 switch (sync_protocol_error.error_type) { 325 switch (sync_protocol_error.error_type) {
325 case browser_sync::UNKNOWN_ERROR: 326 case browser_sync::UNKNOWN_ERROR:
326 LOG(WARNING) << "Sync protocol out-of-date. The server is using a more " 327 LOG(WARNING) << "Sync protocol out-of-date. The server is using a more "
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
471 std::string SyncerProtoUtil::ClientToServerResponseDebugString( 472 std::string SyncerProtoUtil::ClientToServerResponseDebugString(
472 const sync_pb::ClientToServerResponse& response) { 473 const sync_pb::ClientToServerResponse& response) {
473 // Add more handlers as needed. 474 // Add more handlers as needed.
474 std::string output; 475 std::string output;
475 if (response.has_get_updates()) 476 if (response.has_get_updates())
476 output.append(GetUpdatesResponseString(response.get_updates())); 477 output.append(GetUpdatesResponseString(response.get_updates()));
477 return output; 478 return output;
478 } 479 }
479 480
480 } // namespace browser_sync 481 } // namespace browser_sync
OLDNEW
« no previous file with comments | « chrome/browser/sync/engine/syncer_command.cc ('k') | chrome/browser/sync/engine/syncer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698