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

Unified Diff: components/offline_pages/offline_page_model.cc

Issue 1345043002: Update access info when an offline page is being visited (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address feedback Created 5 years, 3 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/offline_pages/offline_page_model.cc
diff --git a/components/offline_pages/offline_page_model.cc b/components/offline_pages/offline_page_model.cc
index f4d787050f1a2f70574b8710b053f20349f1e03c..9f0992b7034a3b098f1a8d04271c697865e6f059 100644
--- a/components/offline_pages/offline_page_model.cc
+++ b/components/offline_pages/offline_page_model.cc
@@ -112,6 +112,22 @@ void OfflinePageModel::SavePage(const GURL& url,
pending_archivers_.push_back(archiver.Pass());
}
+void OfflinePageModel::MarkPageAccessed(
+ int64 bookmark_id,
+ const MarkPageAccessedCallback& callback) {
+ DCHECK(is_loaded_);
+ auto iter = offline_pages_.find(bookmark_id);
+ if (iter == offline_pages_.end())
+ return;
+
+ iter->second.last_access_time = base::Time::Now();
+ iter->second.access_count++;
+ store_->AddOrUpdateOfflinePage(
+ iter->second,
+ base::Bind(&OfflinePageModel::OnUpdateOfflinePageDone,
+ weak_ptr_factory_.GetWeakPtr(), callback));
+}
+
void OfflinePageModel::DeletePageByBookmarkId(
int64 bookmark_id,
const DeletePageCallback& callback) {
@@ -216,7 +232,7 @@ void OfflinePageModel::OnCreateArchiveDone(const GURL& requested_url,
OfflinePageItem offline_page_item(url, bookmark_id, file_path, file_size,
base::Time::Now());
- store_->AddOfflinePage(
+ store_->AddOrUpdateOfflinePage(
offline_page_item,
base::Bind(&OfflinePageModel::OnAddOfflinePageDone,
weak_ptr_factory_.GetWeakPtr(), archiver, callback,
@@ -240,6 +256,11 @@ void OfflinePageModel::OnAddOfflinePageDone(OfflinePageArchiver* archiver,
DeletePendingArchiver(archiver);
}
+void OfflinePageModel::OnUpdateOfflinePageDone(
+ const MarkPageAccessedCallback& callback, bool success) {
+ callback.Run(success);
+}
+
void OfflinePageModel::BookmarkModelChanged() {
}

Powered by Google App Engine
This is Rietveld 408576698