OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/glue/bookmark_change_processor.h" | 5 #include "chrome/browser/sync/glue/bookmark_change_processor.h" |
6 | 6 |
7 #include <stack> | 7 #include <stack> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/location.h" | 10 #include "base/location.h" |
(...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
396 syncer::ReadNode sync_parent(trans); | 396 syncer::ReadNode sync_parent(trans); |
397 if (!associator->InitSyncNodeFromChromeId(parent->id(), &sync_parent)) { | 397 if (!associator->InitSyncNodeFromChromeId(parent->id(), &sync_parent)) { |
398 LOG(WARNING) << "Parent lookup failed"; | 398 LOG(WARNING) << "Parent lookup failed"; |
399 return false; | 399 return false; |
400 } | 400 } |
401 | 401 |
402 bool success = false; | 402 bool success = false; |
403 if (index == 0) { | 403 if (index == 0) { |
404 // Insert into first position. | 404 // Insert into first position. |
405 success = (operation == CREATE) ? | 405 success = (operation == CREATE) ? |
406 dst->InitByCreation(syncer::BOOKMARKS, sync_parent, NULL) : | 406 dst->InitBookmarkByCreation(sync_parent, NULL) : |
407 dst->SetPosition(sync_parent, NULL); | 407 dst->SetPosition(sync_parent, NULL); |
408 if (success) { | 408 if (success) { |
409 DCHECK_EQ(dst->GetParentId(), sync_parent.GetId()); | 409 DCHECK_EQ(dst->GetParentId(), sync_parent.GetId()); |
410 DCHECK_EQ(dst->GetId(), sync_parent.GetFirstChildId()); | 410 DCHECK_EQ(dst->GetId(), sync_parent.GetFirstChildId()); |
411 DCHECK_EQ(dst->GetPredecessorId(), syncer::kInvalidId); | 411 DCHECK_EQ(dst->GetPredecessorId(), syncer::kInvalidId); |
412 } | 412 } |
413 } else { | 413 } else { |
414 // Find the bookmark model predecessor, and insert after it. | 414 // Find the bookmark model predecessor, and insert after it. |
415 const BookmarkNode* prev = parent->GetChild(index - 1); | 415 const BookmarkNode* prev = parent->GetChild(index - 1); |
416 syncer::ReadNode sync_prev(trans); | 416 syncer::ReadNode sync_prev(trans); |
417 if (!associator->InitSyncNodeFromChromeId(prev->id(), &sync_prev)) { | 417 if (!associator->InitSyncNodeFromChromeId(prev->id(), &sync_prev)) { |
418 LOG(WARNING) << "Predecessor lookup failed"; | 418 LOG(WARNING) << "Predecessor lookup failed"; |
419 return false; | 419 return false; |
420 } | 420 } |
421 success = (operation == CREATE) ? | 421 success = (operation == CREATE) ? |
422 dst->InitByCreation(syncer::BOOKMARKS, sync_parent, &sync_prev) : | 422 dst->InitBookmarkByCreation(sync_parent, &sync_prev) : |
423 dst->SetPosition(sync_parent, &sync_prev); | 423 dst->SetPosition(sync_parent, &sync_prev); |
424 if (success) { | 424 if (success) { |
425 DCHECK_EQ(dst->GetParentId(), sync_parent.GetId()); | 425 DCHECK_EQ(dst->GetParentId(), sync_parent.GetId()); |
426 DCHECK_EQ(dst->GetPredecessorId(), sync_prev.GetId()); | 426 DCHECK_EQ(dst->GetPredecessorId(), sync_prev.GetId()); |
427 DCHECK_EQ(dst->GetId(), sync_prev.GetSuccessorId()); | 427 DCHECK_EQ(dst->GetId(), sync_prev.GetSuccessorId()); |
428 } | 428 } |
429 } | 429 } |
430 return success; | 430 return success; |
431 } | 431 } |
432 | 432 |
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
755 sync_pb::BookmarkSpecifics updated_specifics( | 755 sync_pb::BookmarkSpecifics updated_specifics( |
756 sync_node->GetBookmarkSpecifics()); | 756 sync_node->GetBookmarkSpecifics()); |
757 updated_specifics.set_favicon(favicon_bytes->front(), | 757 updated_specifics.set_favicon(favicon_bytes->front(), |
758 favicon_bytes->size()); | 758 favicon_bytes->size()); |
759 updated_specifics.set_icon_url(bookmark_node->icon_url().spec()); | 759 updated_specifics.set_icon_url(bookmark_node->icon_url().spec()); |
760 sync_node->SetBookmarkSpecifics(updated_specifics); | 760 sync_node->SetBookmarkSpecifics(updated_specifics); |
761 } | 761 } |
762 } | 762 } |
763 | 763 |
764 } // namespace browser_sync | 764 } // namespace browser_sync |
OLD | NEW |