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

Side by Side Diff: chrome/browser/android/provider/bookmark_model_observer_task.h

Issue 10912172: [Android] Upstream ChromeBrowserProvider, the Android port ContentProvider implementation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: temporarily removing tests until we can compile and run them (soon) Created 8 years, 3 months 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) 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 #ifndef CHROME_BROWSER_BOOKMARKS_BASE_BOOKMARK_MODEL_OBSERVER_H_ 5 #ifndef CHROME_BROWSER_ANDROID_PROVIDER_BOOKMARK_MODEL_OBSERVER_TASK_H_
6 #define CHROME_BROWSER_BOOKMARKS_BASE_BOOKMARK_MODEL_OBSERVER_H_ 6 #define CHROME_BROWSER_ANDROID_PROVIDER_BOOKMARK_MODEL_OBSERVER_TASK_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "chrome/browser/bookmarks/bookmark_model_observer.h" 10 #include "chrome/browser/bookmarks/bookmark_model_observer.h"
11 11
12 // Base class for a BookmarkModelObserver implementation. All mutations of the 12 // Base class for synchronous tasks that involve the bookmark model.
13 // model funnel into the method BookmarkModelChanged. 13 // Ensures the model has been loaded before accessing it.
14 class BaseBookmarkModelObserver : public BookmarkModelObserver { 14 // Must not be created from the UI thread.
15 class BookmarkModelTask {
15 public: 16 public:
16 BaseBookmarkModelObserver() {} 17 explicit BookmarkModelTask(BookmarkModel* model);
18 BookmarkModel* model() const;
17 19
18 virtual void BookmarkModelChanged() = 0; 20 private:
21 BookmarkModel* model_;
22
23 DISALLOW_COPY_AND_ASSIGN(BookmarkModelTask);
24 };
25
26 // Base class for bookmark model tasks that observe for model updates.
27 class BookmarkModelObserverTask : public BookmarkModelTask,
28 public BookmarkModelObserver {
29 public:
30 explicit BookmarkModelObserverTask(BookmarkModel* bookmark_model);
31 virtual ~BookmarkModelObserverTask();
19 32
20 // BookmarkModelObserver: 33 // BookmarkModelObserver:
21 virtual void Loaded(BookmarkModel* model, bool ids_reassigned) OVERRIDE; 34 virtual void Loaded(BookmarkModel* model, bool ids_reassigned) OVERRIDE;
22 virtual void BookmarkModelBeingDeleted(BookmarkModel* model) OVERRIDE;
23 virtual void BookmarkNodeMoved(BookmarkModel* model, 35 virtual void BookmarkNodeMoved(BookmarkModel* model,
24 const BookmarkNode* old_parent, 36 const BookmarkNode* old_parent,
25 int old_index, 37 int old_index,
26 const BookmarkNode* new_parent, 38 const BookmarkNode* new_parent,
27 int new_index) OVERRIDE; 39 int new_index) OVERRIDE;
28 virtual void BookmarkNodeAdded(BookmarkModel* model, 40 virtual void BookmarkNodeAdded(BookmarkModel* model,
29 const BookmarkNode* parent, 41 const BookmarkNode* parent,
30 int index) OVERRIDE; 42 int index) OVERRIDE;
31 virtual void BookmarkNodeRemoved(BookmarkModel* model, 43 virtual void BookmarkNodeRemoved(BookmarkModel* model,
32 const BookmarkNode* parent, 44 const BookmarkNode* parent,
33 int old_index, 45 int old_index,
34 const BookmarkNode* node) OVERRIDE; 46 const BookmarkNode* node) OVERRIDE;
35 virtual void BookmarkNodeChanged(BookmarkModel* model, 47 virtual void BookmarkNodeChanged(BookmarkModel* model,
36 const BookmarkNode* node) OVERRIDE; 48 const BookmarkNode* node) OVERRIDE;
37 virtual void BookmarkNodeFaviconChanged(BookmarkModel* model, 49 virtual void BookmarkNodeFaviconChanged(BookmarkModel* model,
38 const BookmarkNode* node) OVERRIDE; 50 const BookmarkNode* node) OVERRIDE;
39 virtual void BookmarkNodeChildrenReordered(BookmarkModel* model, 51 virtual void BookmarkNodeChildrenReordered(BookmarkModel* model,
40 const BookmarkNode* node) OVERRIDE; 52 const BookmarkNode* node) OVERRIDE;
41 53
42 protected:
43 virtual ~BaseBookmarkModelObserver() {}
44
45 private: 54 private:
46 DISALLOW_COPY_AND_ASSIGN(BaseBookmarkModelObserver); 55 DISALLOW_COPY_AND_ASSIGN(BookmarkModelObserverTask);
47 }; 56 };
48 57
49 #endif // CHROME_BROWSER_BOOKMARKS_BASE_BOOKMARK_MODEL_OBSERVER_H_ 58 #endif // CHROME_BROWSER_ANDROID_PROVIDER_BOOKMARK_MODEL_OBSERVER_TASK_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698