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

Side by Side Diff: chrome/browser/sync/glue/bookmark_change_processor.cc

Issue 5159001: Rest of the autofill work. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: autofill changes. Created 10 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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
5 #include "chrome/browser/sync/glue/bookmark_change_processor.h" 4 #include "chrome/browser/sync/glue/bookmark_change_processor.h"
6 5
7 #include <stack> 6 #include <stack>
8 #include <vector> 7 #include <vector>
9 8
10 #include "base/string16.h" 9 #include "base/string16.h"
11 #include "base/string_util.h" 10 #include "base/string_util.h"
11
12 #include "base/utf_string_conversions.h" 12 #include "base/utf_string_conversions.h"
13 #include "chrome/browser/bookmarks/bookmark_utils.h" 13 #include "chrome/browser/bookmarks/bookmark_utils.h"
14 #include "chrome/browser/browser_thread.h" 14 #include "chrome/browser/browser_thread.h"
15 #include "chrome/browser/favicon_service.h" 15 #include "chrome/browser/favicon_service.h"
16 #include "chrome/browser/profiles/profile.h" 16 #include "chrome/browser/profiles/profile.h"
17 #include "chrome/browser/sync/profile_sync_service.h" 17 #include "chrome/browser/sync/profile_sync_service.h"
18 #include "gfx/codec/png_codec.h" 18 #include "gfx/codec/png_codec.h"
19 #include "third_party/skia/include/core/SkBitmap.h" 19 #include "third_party/skia/include/core/SkBitmap.h"
20 20
tim (not reviewing) 2010/12/15 20:11:42 nit - extra newline.
lipalani 2010/12/15 21:28:15 Done.
21
21 namespace browser_sync { 22 namespace browser_sync {
22 23
23 BookmarkChangeProcessor::BookmarkChangeProcessor( 24 BookmarkChangeProcessor::BookmarkChangeProcessor(
24 BookmarkModelAssociator* model_associator, 25 BookmarkModelAssociator* model_associator,
25 UnrecoverableErrorHandler* error_handler) 26 UnrecoverableErrorHandler* error_handler)
26 : ChangeProcessor(error_handler), 27 : ChangeProcessor(error_handler),
27 bookmark_model_(NULL), 28 bookmark_model_(NULL),
28 model_associator_(model_associator) { 29 model_associator_(model_associator) {
29 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 30 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
30 DCHECK(model_associator); 31 DCHECK(model_associator);
31 DCHECK(error_handler); 32 DCHECK(error_handler);
32 } 33 }
33 34
34 void BookmarkChangeProcessor::StartImpl(Profile* profile) { 35 void BookmarkChangeProcessor::StartImpl(Profile* profile) {
35 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 36 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
36 DCHECK(!bookmark_model_); 37 DCHECK(!bookmark_model_);
37 bookmark_model_ = profile->GetBookmarkModel(); 38 bookmark_model_ = profile->GetBookmarkModel();
38 DCHECK(bookmark_model_->IsLoaded()); 39 DCHECK(bookmark_model_->IsLoaded());
39 bookmark_model_->AddObserver(this); 40 bookmark_model_->AddObserver(this);
40 } 41 }
41 42
42 void BookmarkChangeProcessor::StopImpl() { 43 void BookmarkChangeProcessor::StopImpl() {
43 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 44 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
44 DCHECK(bookmark_model_); 45 DCHECK(bookmark_model_);
45 bookmark_model_->RemoveObserver(this); 46 bookmark_model_->RemoveObserver(this);
46 bookmark_model_ = NULL; 47 bookmark_model_ = NULL;
47 model_associator_ = NULL; 48 model_associator_ = NULL;
48 } 49 }
49 50
tim (not reviewing) 2010/12/15 20:11:42 extra newline.
lipalani 2010/12/15 21:28:15 Done.
51
50 void BookmarkChangeProcessor::UpdateSyncNodeProperties( 52 void BookmarkChangeProcessor::UpdateSyncNodeProperties(
51 const BookmarkNode* src, BookmarkModel* model, sync_api::WriteNode* dst) { 53 const BookmarkNode* src, BookmarkModel* model, sync_api::WriteNode* dst) {
52 // Set the properties of the item. 54 // Set the properties of the item.
53 dst->SetIsFolder(src->is_folder()); 55 dst->SetIsFolder(src->is_folder());
54 dst->SetTitle(UTF16ToWideHack(src->GetTitle())); 56 dst->SetTitle(UTF16ToWideHack(src->GetTitle()));
55 if (!src->is_folder()) 57 if (!src->is_folder())
56 dst->SetURL(src->GetURL()); 58 dst->SetURL(src->GetURL());
57 SetSyncNodeFavicon(src, model, dst); 59 SetSyncNodeFavicon(src, model, dst);
58 } 60 }
59 61
(...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after
444 // associated with |src|. 446 // associated with |src|.
445 const BookmarkNode* BookmarkChangeProcessor::CreateOrUpdateBookmarkNode( 447 const BookmarkNode* BookmarkChangeProcessor::CreateOrUpdateBookmarkNode(
446 sync_api::BaseNode* src, 448 sync_api::BaseNode* src,
447 BookmarkModel* model) { 449 BookmarkModel* model) {
448 const BookmarkNode* parent = 450 const BookmarkNode* parent =
449 model_associator_->GetChromeNodeFromSyncId(src->GetParentId()); 451 model_associator_->GetChromeNodeFromSyncId(src->GetParentId());
450 if (!parent) { 452 if (!parent) {
451 DLOG(WARNING) << "Could not find parent of node being added/updated." 453 DLOG(WARNING) << "Could not find parent of node being added/updated."
452 << " Node title: " << src->GetTitle() 454 << " Node title: " << src->GetTitle()
453 << ", parent id = " << src->GetParentId(); 455 << ", parent id = " << src->GetParentId();
456
454 return NULL; 457 return NULL;
455 } 458 }
456 int index = CalculateBookmarkModelInsertionIndex(parent, src); 459 int index = CalculateBookmarkModelInsertionIndex(parent, src);
457 const BookmarkNode* dst = model_associator_->GetChromeNodeFromSyncId( 460 const BookmarkNode* dst = model_associator_->GetChromeNodeFromSyncId(
458 src->GetId()); 461 src->GetId());
459 if (!dst) { 462 if (!dst) {
460 dst = CreateBookmarkNode(src, parent, model, index); 463 dst = CreateBookmarkNode(src, parent, model, index);
461 model_associator_->Associate(dst, src->GetId()); 464 model_associator_->Associate(dst, src->GetId());
462 } else { 465 } else {
463 // URL and is_folder are not expected to change. 466 // URL and is_folder are not expected to change.
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
546 const BookmarkNode* bookmark_node, 549 const BookmarkNode* bookmark_node,
547 BookmarkModel* model, 550 BookmarkModel* model,
548 sync_api::WriteNode* sync_node) { 551 sync_api::WriteNode* sync_node) {
549 std::vector<unsigned char> favicon_bytes; 552 std::vector<unsigned char> favicon_bytes;
550 EncodeFavicon(bookmark_node, model, &favicon_bytes); 553 EncodeFavicon(bookmark_node, model, &favicon_bytes);
551 if (!favicon_bytes.empty()) 554 if (!favicon_bytes.empty())
552 sync_node->SetFaviconBytes(favicon_bytes); 555 sync_node->SetFaviconBytes(favicon_bytes);
553 } 556 }
554 557
555 } // namespace browser_sync 558 } // namespace browser_sync
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698