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

Unified Diff: components/offline_pages/offline_page_metadata_store_sql.cc

Issue 2512073002: [Offline Pages] Removes two-step expiration related. (Closed)
Patch Set: adding unit in histograms. Created 4 years, 1 month 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/offline_pages/offline_page_metadata_store_sql.cc
diff --git a/components/offline_pages/offline_page_metadata_store_sql.cc b/components/offline_pages/offline_page_metadata_store_sql.cc
index 4fbd76519f5823d7e65fe7d19a132a6f3db15266..d85c97f407d372ae7ff7da9960d075226ad8a902 100644
--- a/components/offline_pages/offline_page_metadata_store_sql.cc
+++ b/components/offline_pages/offline_page_metadata_store_sql.cc
@@ -33,7 +33,6 @@ bool CreateOfflinePagesTable(sql::Connection* db) {
" file_size INTEGER NOT NULL,"
" last_access_time INTEGER NOT NULL,"
" access_count INTEGER NOT NULL,"
- " expiration_time INTEGER NOT NULL DEFAULT 0,"
" client_namespace VARCHAR NOT NULL,"
" client_id VARCHAR NOT NULL,"
" online_url VARCHAR NOT NULL,"
@@ -76,12 +75,12 @@ bool UpgradeFrom53(sql::Connection* db) {
const char kSql[] =
"INSERT INTO " OFFLINE_PAGES_TABLE_NAME
" (offline_id, creation_time, file_size, last_access_time, "
- "access_count, expiration_time, client_namespace, client_id, "
- "online_url, file_path) "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path) "
"SELECT "
"offline_id, creation_time, file_size, last_access_time, "
- "access_count, expiration_time, client_namespace, client_id, "
- "online_url, file_path "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path "
"FROM temp_" OFFLINE_PAGES_TABLE_NAME;
return UpgradeWithQuery(db, kSql);
}
@@ -90,12 +89,12 @@ bool UpgradeFrom54(sql::Connection* db) {
const char kSql[] =
"INSERT INTO " OFFLINE_PAGES_TABLE_NAME
" (offline_id, creation_time, file_size, last_access_time, "
- "access_count, expiration_time, client_namespace, client_id, "
- "online_url, file_path, title) "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path, title) "
"SELECT "
"offline_id, creation_time, file_size, last_access_time, "
- "access_count, expiration_time, client_namespace, client_id, "
- "online_url, file_path, title "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path, title "
"FROM temp_" OFFLINE_PAGES_TABLE_NAME;
return UpgradeWithQuery(db, kSql);
}
@@ -104,12 +103,26 @@ bool UpgradeFrom55(sql::Connection* db) {
const char kSql[] =
"INSERT INTO " OFFLINE_PAGES_TABLE_NAME
" (offline_id, creation_time, file_size, last_access_time, "
- "access_count, expiration_time, client_namespace, client_id, "
- "online_url, file_path, title) "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path, title) "
+ "SELECT "
+ "offline_id, creation_time, file_size, last_access_time, "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path, title "
+ "FROM temp_" OFFLINE_PAGES_TABLE_NAME;
+ return UpgradeWithQuery(db, kSql);
+}
+
+bool UpgradeFrom56(sql::Connection* db) {
+ const char kSql[] =
+ "INSERT INTO " OFFLINE_PAGES_TABLE_NAME
+ " (offline_id, creation_time, file_size, last_access_time, "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path, title, original_url) "
"SELECT "
"offline_id, creation_time, file_size, last_access_time, "
- "access_count, expiration_time, client_namespace, client_id, "
- "online_url, file_path, title "
+ "access_count, client_namespace, client_id, online_url, "
+ "file_path, title, original_url "
"FROM temp_" OFFLINE_PAGES_TABLE_NAME;
return UpgradeWithQuery(db, kSql);
}
@@ -127,7 +140,8 @@ bool CreateSchema(sql::Connection* db) {
}
// Upgrade section. Details are described in the header file.
- if (!db->DoesColumnExist(OFFLINE_PAGES_TABLE_NAME, "expiration_time")) {
+ if (!db->DoesColumnExist(OFFLINE_PAGES_TABLE_NAME, "expiration_time") &&
+ !db->DoesColumnExist(OFFLINE_PAGES_TABLE_NAME, "title")) {
if (!UpgradeFrom52(db))
return false;
} else if (!db->DoesColumnExist(OFFLINE_PAGES_TABLE_NAME, "title")) {
@@ -139,6 +153,9 @@ bool CreateSchema(sql::Connection* db) {
} else if (!db->DoesColumnExist(OFFLINE_PAGES_TABLE_NAME, "original_url")) {
if (!UpgradeFrom55(db))
return false;
+ } else if (db->DoesColumnExist(OFFLINE_PAGES_TABLE_NAME, "expiration_time")) {
+ if (!UpgradeFrom56(db))
+ return false;
}
// TODO(fgorski): Add indices here.
@@ -183,18 +200,15 @@ OfflinePageItem MakeOfflinePageItem(sql::Statement* statement) {
base::Time last_access_time =
base::Time::FromInternalValue(statement->ColumnInt64(3));
int access_count = statement->ColumnInt(4);
- base::Time expiration_time =
- base::Time::FromInternalValue(statement->ColumnInt64(5));
- ClientId client_id(statement->ColumnString(6), statement->ColumnString(7));
- GURL url(statement->ColumnString(8));
- base::FilePath path(GetPathFromUTF8String(statement->ColumnString(9)));
- base::string16 title = statement->ColumnString16(10);
- GURL original_url(statement->ColumnString(11));
+ ClientId client_id(statement->ColumnString(5), statement->ColumnString(6));
+ GURL url(statement->ColumnString(7));
+ base::FilePath path(GetPathFromUTF8String(statement->ColumnString(8)));
+ base::string16 title = statement->ColumnString16(9);
+ GURL original_url(statement->ColumnString(10));
OfflinePageItem item(url, id, client_id, path, file_size, creation_time);
item.last_access_time = last_access_time;
item.access_count = access_count;
- item.expiration_time = expiration_time;
item.title = title;
item.original_url = original_url;
return item;
@@ -207,9 +221,9 @@ ItemActionStatus Insert(sql::Connection* db, const OfflinePageItem& item) {
"INSERT OR IGNORE INTO " OFFLINE_PAGES_TABLE_NAME
" (offline_id, online_url, client_namespace, client_id, file_path, "
"file_size, creation_time, last_access_time, access_count, "
- "expiration_time, title, original_url)"
+ "title, original_url)"
" VALUES "
- " (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
+ " (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
sql::Statement statement(db->GetCachedStatement(SQL_FROM_HERE, kSql));
statement.BindInt64(0, item.offline_id);
@@ -221,9 +235,8 @@ ItemActionStatus Insert(sql::Connection* db, const OfflinePageItem& item) {
statement.BindInt64(6, item.creation_time.ToInternalValue());
statement.BindInt64(7, item.last_access_time.ToInternalValue());
statement.BindInt(8, item.access_count);
- statement.BindInt64(9, item.expiration_time.ToInternalValue());
- statement.BindString16(10, item.title);
- statement.BindString(11, item.original_url.spec());
+ statement.BindString16(9, item.title);
+ statement.BindString(10, item.original_url.spec());
if (!statement.Run())
return ItemActionStatus::STORE_ERROR;
if (db->GetLastChangeCount() == 0)
@@ -236,7 +249,7 @@ bool Update(sql::Connection* db, const OfflinePageItem& item) {
"UPDATE OR IGNORE " OFFLINE_PAGES_TABLE_NAME
" SET online_url = ?, client_namespace = ?, client_id = ?, file_path = ?,"
" file_size = ?, creation_time = ?, last_access_time = ?,"
- " access_count = ?, expiration_time = ?, title = ?, original_url = ?"
+ " access_count = ?, title = ?, original_url = ?"
" WHERE offline_id = ?";
sql::Statement statement(db->GetCachedStatement(SQL_FROM_HERE, kSql));
@@ -248,10 +261,9 @@ bool Update(sql::Connection* db, const OfflinePageItem& item) {
statement.BindInt64(5, item.creation_time.ToInternalValue());
statement.BindInt64(6, item.last_access_time.ToInternalValue());
statement.BindInt(7, item.access_count);
- statement.BindInt64(8, item.expiration_time.ToInternalValue());
- statement.BindString16(9, item.title);
- statement.BindString(10, item.original_url.spec());
- statement.BindInt64(11, item.offline_id);
+ statement.BindString16(8, item.title);
+ statement.BindString(9, item.original_url.spec());
+ statement.BindInt64(10, item.offline_id);
return statement.Run() && db->GetLastChangeCount() > 0;
}
« no previous file with comments | « components/offline_pages/offline_page_metadata_store_sql.h ('k') | components/offline_pages/offline_page_model.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698