summaryrefslogtreecommitdiffstats
path: root/chrome/browser/history/thumbnail_database.h
diff options
context:
space:
mode:
authormichaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-25 06:28:35 +0000
committermichaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-25 06:28:35 +0000
commitd1e362f4250a213d3bd771c2cbe488401a97f082 (patch)
tree18546591a2ccd7b05e75d6ea5874927f7316d0cc /chrome/browser/history/thumbnail_database.h
parent33b36dcdab150d41425bc141192c137267443f1e (diff)
downloadchromium_src-d1e362f4250a213d3bd771c2cbe488401a97f082.zip
chromium_src-d1e362f4250a213d3bd771c2cbe488401a97f082.tar.gz
chromium_src-d1e362f4250a213d3bd771c2cbe488401a97f082.tar.bz2
Implement IconMappingEnumerator.
The IconMappingEnumerator is used to iterator all icon_mappings of the given type. BUG= TEST= Review URL: http://codereview.chromium.org/9464019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123645 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/history/thumbnail_database.h')
-rw-r--r--chrome/browser/history/thumbnail_database.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/chrome/browser/history/thumbnail_database.h b/chrome/browser/history/thumbnail_database.h
index e3c5165..fdd3a8b 100644
--- a/chrome/browser/history/thumbnail_database.h
+++ b/chrome/browser/history/thumbnail_database.h
@@ -15,6 +15,7 @@
#include "sql/connection.h"
#include "sql/init_status.h"
#include "sql/meta_table.h"
+#include "sql/statement.h"
class FilePath;
class RefCountedMemory;
@@ -169,6 +170,30 @@ class ThumbnailDatabase {
// mappings. Otherwise, will leave mappings alone.
bool CloneIconMapping(const GURL& old_page_url, const GURL& new_page_url);
+ // The class to enumerate icon mappings. Use InitIconMappingEnumerator to
+ // initialize.
+ class IconMappingEnumerator {
+ public:
+ IconMappingEnumerator();
+ ~IconMappingEnumerator();
+
+ // Get the next icon mapping, return false if no more are available.
+ bool GetNextIconMapping(IconMapping* icon_mapping);
+
+ private:
+ friend class ThumbnailDatabase;
+
+ // Used to query database and return the data for filling IconMapping in
+ // each call of GetNextIconMapping().
+ sql::Statement statement_;
+
+ DISALLOW_COPY_AND_ASSIGN(IconMappingEnumerator);
+ };
+
+ // Return all icon mappings of the given |icon_type|.
+ bool InitIconMappingEnumerator(IconType type,
+ IconMappingEnumerator* enumerator);
+
// Temporary IconMapping -----------------------------------------------------
//
// Creates a temporary table to store icon mapping. Icon mapping will be