Index: components/offline_pages/offline_page_model_impl.cc |
diff --git a/components/offline_pages/offline_page_model_impl.cc b/components/offline_pages/offline_page_model_impl.cc |
index 2758afb2637162640e5d7b32da27e7600679e600..b026304f41c633487a3eaaedd5c426585d38541a 100644 |
--- a/components/offline_pages/offline_page_model_impl.cc |
+++ b/components/offline_pages/offline_page_model_impl.cc |
@@ -380,7 +380,7 @@ void OfflinePageModelImpl::MarkPageAccessedWhenLoadDone(int64_t offline_id) { |
DCHECK(is_loaded_); |
auto iter = offline_pages_.find(offline_id); |
- if (iter == offline_pages_.end() || iter->second.IsExpired()) |
+ if (iter == offline_pages_.end()) |
return; |
// Make a copy of the cached item and update it. The cached item should only |
@@ -414,7 +414,7 @@ void OfflinePageModelImpl::DoDeletePagesByOfflineId( |
std::vector<base::FilePath> paths_to_delete; |
for (const auto& offline_id : offline_ids) { |
auto iter = offline_pages_.find(offline_id); |
- if (iter != offline_pages_.end() && !iter->second.IsExpired()) { |
+ if (iter != offline_pages_.end()) { |
paths_to_delete.push_back(iter->second.file_path); |
} |
} |
@@ -435,10 +435,8 @@ void OfflinePageModelImpl::DeletePagesByClientIds( |
const std::vector<ClientId>& client_ids, |
const DeletePageCallback& callback) { |
OfflinePageModelQueryBuilder builder; |
- builder |
- .SetClientIds(OfflinePageModelQuery::Requirement::INCLUDE_MATCHING, |
- client_ids) |
- .AllowExpiredPages(true); |
+ builder.SetClientIds(OfflinePageModelQuery::Requirement::INCLUDE_MATCHING, |
+ client_ids); |
auto delete_pages = base::Bind(&OfflinePageModelImpl::DeletePages, |
weak_ptr_factory_.GetWeakPtr(), callback); |
RunWhenLoaded(base::Bind( |
@@ -551,17 +549,6 @@ void OfflinePageModelImpl::GetAllPages( |
base::Passed(builder.Build(GetPolicyController())), callback)); |
} |
-void OfflinePageModelImpl::GetAllPagesWithExpired( |
- const MultipleOfflinePageItemCallback& callback) { |
- OfflinePageModelQueryBuilder builder; |
- builder.AllowExpiredPages(true); |
- |
- RunWhenLoaded( |
- base::Bind(&OfflinePageModelImpl::GetPagesMatchingQueryWhenLoadDone, |
- weak_ptr_factory_.GetWeakPtr(), |
- base::Passed(builder.Build(GetPolicyController())), callback)); |
-} |
- |
void OfflinePageModelImpl::GetOfflineIdsForClientId( |
const ClientId& client_id, |
const MultipleOfflineIdCallback& callback) { |
@@ -585,10 +572,8 @@ const std::vector<int64_t> OfflinePageModelImpl::MaybeGetOfflineIdsForClientId( |
// We want only all pages, including those marked for deletion. |
// TODO(fgorski): actually use an index rather than linear scan. |
for (const auto& id_page_pair : offline_pages_) { |
- if (id_page_pair.second.client_id == client_id && |
- !id_page_pair.second.IsExpired()) { |
+ if (id_page_pair.second.client_id == client_id) |
results.push_back(id_page_pair.second.offline_id); |
- } |
} |
return results; |
} |
@@ -645,8 +630,6 @@ void OfflinePageModelImpl::GetPagesByURLWhenLoadDone( |
url.ReplaceComponents(remove_params); |
for (const auto& id_page_pair : offline_pages_) { |
- if (id_page_pair.second.IsExpired()) |
- continue; |
// First, search by last committed URL with fragment stripped. |
if (url_without_fragment == |
id_page_pair.second.url.ReplaceComponents(remove_params)) { |
@@ -672,65 +655,6 @@ void OfflinePageModelImpl::CheckMetadataConsistency() { |
weak_ptr_factory_.GetWeakPtr())); |
} |
-void OfflinePageModelImpl::ExpirePages( |
- const std::vector<int64_t>& offline_ids, |
- const base::Time& expiration_time, |
- const base::Callback<void(bool)>& callback) { |
- std::vector<base::FilePath> paths_to_delete; |
- std::vector<OfflinePageItem> items_to_update; |
- for (int64_t offline_id : offline_ids) { |
- auto iter = offline_pages_.find(offline_id); |
- if (iter == offline_pages_.end()) |
- continue; |
- |
- OfflinePageItem offline_page = iter->second; |
- paths_to_delete.push_back(offline_page.file_path); |
- offline_page.expiration_time = expiration_time; |
- |
- items_to_update.push_back(offline_page); |
- } |
- |
- store_->UpdateOfflinePages( |
- items_to_update, |
- base::Bind(&OfflinePageModelImpl::OnExpirePageDone, |
- weak_ptr_factory_.GetWeakPtr(), expiration_time)); |
- |
- if (paths_to_delete.empty()) { |
- callback.Run(true); |
- return; |
- } |
- archive_manager_->DeleteMultipleArchives(paths_to_delete, callback); |
-} |
- |
-void OfflinePageModelImpl::OnExpirePageDone( |
- const base::Time& expiration_time, |
- std::unique_ptr<OfflinePagesUpdateResult> result) { |
- UMA_HISTOGRAM_BOOLEAN("OfflinePages.ExpirePage.StoreUpdateResult", |
- result->updated_items.size() > 0); |
- for (const auto& expired_page : result->updated_items) { |
- const auto& iter = offline_pages_.find(expired_page.offline_id); |
- if (iter == offline_pages_.end()) |
- continue; |
- |
- iter->second.expiration_time = expiration_time; |
- ClientId client_id = iter->second.client_id; |
- offline_event_logger_.RecordPageExpired( |
- std::to_string(expired_page.offline_id)); |
- base::HistogramBase* histogram = base::Histogram::FactoryGet( |
- AddHistogramSuffix(client_id, "OfflinePages.ExpirePage.PageLifetime"), |
- 1, base::TimeDelta::FromDays(30).InMinutes(), 50, |
- base::HistogramBase::kUmaTargetedHistogramFlag); |
- histogram->Add((expiration_time - iter->second.creation_time).InMinutes()); |
- histogram = base::Histogram::FactoryGet( |
- AddHistogramSuffix(client_id, |
- "OfflinePages.ExpirePage.TimeSinceLastAccess"), |
- 1, base::TimeDelta::FromDays(30).InMinutes(), 50, |
- base::HistogramBase::kUmaTargetedHistogramFlag); |
- histogram->Add( |
- (expiration_time - iter->second.last_access_time).InMinutes()); |
- } |
-} |
- |
ClientPolicyController* OfflinePageModelImpl::GetPolicyController() { |
return policy_controller_.get(); |
} |
@@ -1045,11 +969,11 @@ void OfflinePageModelImpl::InformDeletePageDone( |
void OfflinePageModelImpl::CheckMetadataConsistencyForArchivePaths( |
const std::set<base::FilePath>& archive_paths) { |
- ExpirePagesMissingArchiveFile(archive_paths); |
+ DeletePagesMissingArchiveFile(archive_paths); |
DeleteOrphanedArchives(archive_paths); |
} |
-void OfflinePageModelImpl::ExpirePagesMissingArchiveFile( |
+void OfflinePageModelImpl::DeletePagesMissingArchiveFile( |
const std::set<base::FilePath>& archive_paths) { |
std::vector<int64_t> ids_of_pages_missing_archive_file; |
for (const auto& id_page_pair : offline_pages_) { |
@@ -1060,20 +984,22 @@ void OfflinePageModelImpl::ExpirePagesMissingArchiveFile( |
if (ids_of_pages_missing_archive_file.empty()) |
return; |
- ExpirePages( |
- ids_of_pages_missing_archive_file, GetCurrentTime(), |
- base::Bind(&OfflinePageModelImpl::OnExpirePagesMissingArchiveFileDone, |
+ DeletePagesByOfflineId( |
+ ids_of_pages_missing_archive_file, |
+ base::Bind(&OfflinePageModelImpl::OnDeletePagesMissingArchiveFileDone, |
weak_ptr_factory_.GetWeakPtr(), |
ids_of_pages_missing_archive_file)); |
} |
-void OfflinePageModelImpl::OnExpirePagesMissingArchiveFileDone( |
+void OfflinePageModelImpl::OnDeletePagesMissingArchiveFileDone( |
const std::vector<int64_t>& offline_ids, |
- bool success) { |
+ DeletePageResult result) { |
UMA_HISTOGRAM_COUNTS("OfflinePages.Consistency.PagesMissingArchiveFileCount", |
static_cast<int32_t>(offline_ids.size())); |
- UMA_HISTOGRAM_BOOLEAN( |
- "OfflinePages.Consistency.ExpirePagesMissingArchiveFileResult", success); |
+ UMA_HISTOGRAM_ENUMERATION( |
+ "OfflinePages.Consistency.DeletePagesMissingArchiveFileResult", |
+ static_cast<int>(result), |
+ static_cast<int>(DeletePageResult::RESULT_COUNT)); |
} |
void OfflinePageModelImpl::DeleteOrphanedArchives( |
@@ -1120,14 +1046,14 @@ void OfflinePageModelImpl::ClearStorageIfNeeded( |
storage_manager_->ClearPagesIfNeeded(callback); |
} |
-void OfflinePageModelImpl::OnStorageCleared(size_t expired_page_count, |
+void OfflinePageModelImpl::OnStorageCleared(size_t deleted_page_count, |
ClearStorageResult result) { |
UMA_HISTOGRAM_ENUMERATION("OfflinePages.ClearStorageResult", |
static_cast<int>(result), |
static_cast<int>(ClearStorageResult::RESULT_COUNT)); |
- if (expired_page_count > 0) { |
- UMA_HISTOGRAM_COUNTS("OfflinePages.ExpirePage.BatchSize", |
- static_cast<int32_t>(expired_page_count)); |
+ if (deleted_page_count > 0) { |
+ UMA_HISTOGRAM_COUNTS("OfflinePages.ClearStorageBatchSize", |
+ static_cast<int32_t>(deleted_page_count)); |
} |
} |