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

Unified Diff: components/history/core/browser/typed_url_sync_metadata_database.cc

Issue 2961723003: [USS] Implement ApplySyncChanges and OnURLVisited/Modified/Deleted. (Closed)
Patch Set: handle nullptr case in bridge Created 3 years, 5 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: components/history/core/browser/typed_url_sync_metadata_database.cc
diff --git a/components/history/core/browser/typed_url_sync_metadata_database.cc b/components/history/core/browser/typed_url_sync_metadata_database.cc
index 81e9da0a8e930690b7a6bbfda50714e61fc99998..f216e89f1e56a03e39beed7576cfe8ddf9dc88f3 100644
--- a/components/history/core/browser/typed_url_sync_metadata_database.cc
+++ b/components/history/core/browser/typed_url_sync_metadata_database.cc
@@ -6,7 +6,6 @@
#include "base/big_endian.h"
#include "base/logging.h"
-#include "components/history/core/browser/url_row.h"
#include "sql/statement.h"
namespace history {
@@ -55,16 +54,10 @@ bool TypedURLSyncMetadataDatabase::UpdateSyncMetadata(
DCHECK_EQ(model_type, syncer::TYPED_URLS)
<< "Only the TYPED_URLS model type is supported";
- int64_t storage_key_int = 0;
- DCHECK_EQ(storage_key.size(), sizeof(storage_key_int));
- base::ReadBigEndian(storage_key.data(), &storage_key_int);
- // Make sure storage_key_int is set.
- DCHECK_NE(storage_key_int, 0);
-
sql::Statement s(GetDB().GetUniqueStatement(
"INSERT OR REPLACE INTO typed_url_sync_metadata "
"(storage_key, value) VALUES(?, ?)"));
- s.BindInt64(0, storage_key_int);
+ s.BindInt64(0, StorageKeyToURLID(storage_key));
s.BindString(1, metadata.SerializeAsString());
return s.Run();
@@ -76,15 +69,9 @@ bool TypedURLSyncMetadataDatabase::ClearSyncMetadata(
DCHECK_EQ(model_type, syncer::TYPED_URLS)
<< "Only the TYPED_URLS model type is supported";
- int64_t storage_key_int = 0;
- DCHECK_EQ(storage_key.size(), sizeof(storage_key_int));
- base::ReadBigEndian(storage_key.data(), &storage_key_int);
- // Make sure storage_key_int is set.
- DCHECK_NE(storage_key_int, 0);
-
sql::Statement s(GetDB().GetUniqueStatement(
"DELETE FROM typed_url_sync_metadata WHERE storage_key=?"));
- s.BindInt64(0, storage_key_int);
+ s.BindInt64(0, StorageKeyToURLID(storage_key));
return s.Run();
}
@@ -108,6 +95,17 @@ bool TypedURLSyncMetadataDatabase::ClearModelTypeState(
return GetMetaTable().DeleteKey(kTypedURLModelTypeStateKey);
}
+// static
+URLID TypedURLSyncMetadataDatabase::StorageKeyToURLID(
+ const std::string& storage_key) {
+ URLID storage_key_int = 0;
+ DCHECK_EQ(storage_key.size(), sizeof(storage_key_int));
+ base::ReadBigEndian(storage_key.data(), &storage_key_int);
+ // Make sure storage_key_int is set.
+ DCHECK_NE(storage_key_int, 0);
+ return storage_key_int;
+}
+
bool TypedURLSyncMetadataDatabase::InitSyncTable() {
if (!GetDB().DoesTableExist("typed_url_sync_metadata")) {
if (!GetDB().Execute("CREATE TABLE typed_url_sync_metadata ("

Powered by Google App Engine
This is Rietveld 408576698