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

Unified Diff: chrome/browser/history/shortcuts_database.cc

Issue 9689085: Clean up ShortcutsProvider and related classes. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/history/shortcuts_database.cc
===================================================================
--- chrome/browser/history/shortcuts_database.cc (revision 125990)
+++ chrome/browser/history/shortcuts_database.cc (working copy)
@@ -9,58 +9,35 @@
#include <vector>
#include "base/logging.h"
-#include "base/string_number_conversions.h"
#include "base/stringprintf.h"
#include "base/time.h"
-#include "base/utf_string_conversions.h"
-#include "chrome/browser/autocomplete/shortcuts_provider.h"
#include "chrome/common/guid.h"
#include "sql/statement.h"
-using base::Time;
-
namespace {
// Using define instead of const char, so I could use ## in the statements.
#define kShortcutsDBName "omni_box_shortcuts"
-// The maximum length allowed for form data.
-const size_t kMaxDataLength = 2048; // 2K is a hard limit on URLs URI.
-
-string16 LimitDataSize(const string16& data) {
- if (data.size() > kMaxDataLength)
- return data.substr(0, kMaxDataLength);
-
- return data;
-}
-
-void BindShortcutToStatement(const shortcuts_provider::Shortcut& shortcut,
- sql::Statement* s) {
+void BindShortcutToStatement(
+ const history::ShortcutsBackend::Shortcut& shortcut,
+ sql::Statement* s) {
DCHECK(guid::IsValidGUID(shortcut.id));
s->BindString(0, shortcut.id);
- s->BindString16(1, LimitDataSize(shortcut.text));
- s->BindString16(2, LimitDataSize(UTF8ToUTF16(shortcut.url.spec())));
- s->BindString16(3, LimitDataSize(shortcut.contents));
- s->BindString16(4, LimitDataSize(shortcut.contents_class_as_str()));
- s->BindString16(5, LimitDataSize(shortcut.description));
- s->BindString16(6, LimitDataSize(shortcut.description_class_as_str()));
+ s->BindString16(1, shortcut.text);
+ s->BindString(2, shortcut.url.spec());
+ s->BindString16(3, shortcut.contents);
+ s->BindString(4,
+ AutocompleteMatch::ClassificationsToString(shortcut.contents_class));
+ s->BindString16(5, shortcut.description);
+ s->BindString(6,
+ AutocompleteMatch::ClassificationsToString(shortcut.description_class));
s->BindInt64(7, shortcut.last_access_time.ToInternalValue());
s->BindInt(8, shortcut.number_of_hits);
}
-shortcuts_provider::Shortcut ShortcutFromStatement(const sql::Statement& s) {
- return shortcuts_provider::Shortcut(s.ColumnString(0),
- s.ColumnString16(1),
- s.ColumnString16(2),
- s.ColumnString16(3),
- s.ColumnString16(4),
- s.ColumnString16(5),
- s.ColumnString16(6),
- s.ColumnInt64(7),
- s.ColumnInt(8));
-}
-
-bool DeleteShortcut(const char* field_name, const std::string& id,
+bool DeleteShortcut(const char* field_name,
+ const std::string& id,
sql::Connection& db) {
sql::Statement s(db.GetUniqueStatement(
base::StringPrintf("DELETE FROM %s WHERE %s = ?", kShortcutsDBName,
@@ -104,7 +81,7 @@
}
bool ShortcutsDatabase::AddShortcut(
- const shortcuts_provider::Shortcut& shortcut) {
+ const ShortcutsBackend::Shortcut& shortcut) {
sql::Statement s(db_.GetCachedStatement(SQL_FROM_HERE,
"INSERT INTO " kShortcutsDBName
" (id, text, url, contents, contents_class, description,"
@@ -116,7 +93,7 @@
}
bool ShortcutsDatabase::UpdateShortcut(
- const shortcuts_provider::Shortcut& shortcut) {
+ const ShortcutsBackend::Shortcut& shortcut) {
sql::Statement s(db_.GetCachedStatement(SQL_FROM_HERE,
"UPDATE " kShortcutsDBName " "
"SET id=?, text=?, url=?, contents=?, contents_class=?,"
@@ -158,8 +135,7 @@
}
// Loads all of the shortcuts.
-bool ShortcutsDatabase::LoadShortcuts(
- std::map<std::string, shortcuts_provider::Shortcut>* shortcuts) {
+bool ShortcutsDatabase::LoadShortcuts(GuidToShortcutMap* shortcuts) {
DCHECK(shortcuts);
sql::Statement s(db_.GetCachedStatement(SQL_FROM_HERE,
"SELECT id, text, url, contents, contents_class, "
@@ -172,7 +148,12 @@
shortcuts->clear();
while (s.Step()) {
shortcuts->insert(std::make_pair(s.ColumnString(0),
- ShortcutFromStatement(s)));
+ ShortcutsBackend::Shortcut(s.ColumnString(0), s.ColumnString16(1),
+ GURL(s.ColumnString(2)), s.ColumnString16(3),
+ AutocompleteMatch::ClassificationsFromString(s.ColumnString(4)),
+ s.ColumnString16(5),
+ AutocompleteMatch::ClassificationsFromString(s.ColumnString(6)),
+ base::Time::FromInternalValue(s.ColumnInt64(7)), s.ColumnInt(8))));
}
return true;
}

Powered by Google App Engine
This is Rietveld 408576698