| 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 |