| Index: chrome/browser/webdata/keyword_table.h
|
| ===================================================================
|
| --- chrome/browser/webdata/keyword_table.h (revision 130759)
|
| +++ chrome/browser/webdata/keyword_table.h (working copy)
|
| @@ -16,6 +16,7 @@
|
| #include "chrome/browser/search_engines/template_url_id.h"
|
|
|
| class TemplateURL;
|
| +struct TemplateURLData;
|
|
|
| namespace sql {
|
| class Statement;
|
| @@ -27,7 +28,7 @@
|
| // Note: The database stores time in seconds, UTC.
|
| //
|
| // keywords Most of the columns mirror that of a field in
|
| -// TemplateURL. See TemplateURL for more details.
|
| +// TemplateURLData. See that struct for more details.
|
| // id
|
| // short_name
|
| // keyword
|
| @@ -43,16 +44,16 @@
|
| // input_encodings Semicolon separated list of supported input
|
| // encodings, may be empty.
|
| // suggest_url
|
| -// prepopulate_id See TemplateURL::prepopulate_id.
|
| +// prepopulate_id See TemplateURLData::prepopulate_id.
|
| // autogenerate_keyword
|
| // logo_id Deprecated, to be removed; see crbug.com/113248.
|
| -// created_by_policy See TemplateURL::created_by_policy. This was added
|
| -// in version 26.
|
| -// instant_url See TemplateURL::instant_url. This was added
|
| -// in version 29.
|
| -// last_modified See TemplateURL::last_modified. This was added in
|
| -// version 38.
|
| -// sync_guid See TemplateURL::sync_guid. This was added in
|
| +// created_by_policy See TemplateURLData::created_by_policy. This was
|
| +// added in version 26.
|
| +// instant_url See TemplateURLData::instant_url. This was added in
|
| +// version 29.
|
| +// last_modified See TemplateURLData::last_modified. This was added
|
| +// in version 38.
|
| +// sync_guid See TemplateURLData::sync_guid. This was added in
|
| // version 39.
|
| //
|
| // keywords_backup The full copy of the |keywords| table. Added in
|
| @@ -81,7 +82,7 @@
|
| //
|
| class KeywordTable : public WebDatabaseTable {
|
| public:
|
| - typedef std::vector<TemplateURL*> Keywords;
|
| + typedef std::vector<TemplateURLData> Keywords;
|
|
|
| // Constants exposed for the benefit of test code:
|
|
|
| @@ -118,13 +119,13 @@
|
| // Returns true on success.
|
| bool UpdateKeyword(const TemplateURL& url);
|
|
|
| - // ID (TemplateURL->id) of the default search provider.
|
| + // ID (TemplateURLData->id) of the default search provider.
|
| bool SetDefaultSearchProviderID(int64 id);
|
| int64 GetDefaultSearchProviderID();
|
|
|
| - // Backup of the default search provider. NULL if the backup is invalid. The
|
| - // returned TemplateURL is owned by the caller.
|
| - TemplateURL* GetDefaultSearchProviderBackup();
|
| + // If the default search provider backup is valid, returns true and copies the
|
| + // backup into |backup|. Otherwise returns false.
|
| + bool GetDefaultSearchProviderBackup(TemplateURLData* backup);
|
|
|
| // Returns true if the default search provider has been changed out from under
|
| // us. This can happen if another process modifies our database or the file
|
| @@ -150,10 +151,14 @@
|
| FRIEND_TEST_ALL_PREFIXES(KeywordTableTest, GetTableContents);
|
| FRIEND_TEST_ALL_PREFIXES(KeywordTableTest, GetTableContentsOrdering);
|
|
|
| - // Returns a new TemplateURL from the data in |s|. The caller owns the
|
| - // returned pointer.
|
| - static TemplateURL* GetKeywordDataFromStatement(const sql::Statement& s);
|
| + // NOTE: Since the table columns have changed in different versions, many
|
| + // functions below take a |table_version| argument which dictates which
|
| + // version number's column set to use.
|
|
|
| + // Fills |data| with the data in |s|.
|
| + static void GetKeywordDataFromStatement(const sql::Statement& s,
|
| + TemplateURLData* data);
|
| +
|
| // Returns contents of |keywords_backup| table and default search provider
|
| // id backup as a string through |data|. Return value is true on success,
|
| // false otherwise.
|
|
|