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 8642ab137cadd30b0c337de6a28463c82e85c2d6..5159fefd32b286f64da49d5e436bc48b6d24399d 100644 |
--- a/components/offline_pages/offline_page_model_impl.cc |
+++ b/components/offline_pages/offline_page_model_impl.cc |
@@ -450,16 +450,26 @@ void OfflinePageModelImpl::CheckPagesExistOfflineAfterLoadDone( |
void OfflinePageModelImpl::GetAllPages( |
const MultipleOfflinePageItemCallback& callback) { |
RunWhenLoaded(base::Bind(&OfflinePageModelImpl::GetAllPagesAfterLoadDone, |
- weak_ptr_factory_.GetWeakPtr(), callback)); |
+ weak_ptr_factory_.GetWeakPtr(), GetAllPageMode::ALL, |
+ callback)); |
+} |
+ |
+void OfflinePageModelImpl::GetAllPagesWithExpired( |
+ const MultipleOfflinePageItemCallback& callback) { |
+ RunWhenLoaded(base::Bind(&OfflinePageModelImpl::GetAllPagesAfterLoadDone, |
+ weak_ptr_factory_.GetWeakPtr(), |
+ GetAllPageMode::ALL_WITH_EXPIRED, callback)); |
} |
void OfflinePageModelImpl::GetAllPagesAfterLoadDone( |
+ GetAllPageMode mode, |
const MultipleOfflinePageItemCallback& callback) const { |
DCHECK(is_loaded_); |
MultipleOfflinePageItemResult offline_pages; |
for (const auto& id_page_pair : offline_pages_) { |
- if (!id_page_pair.second.IsExpired()) |
+ if (mode == GetAllPageMode::ALL_WITH_EXPIRED || |
+ !id_page_pair.second.IsExpired()) |
offline_pages.push_back(id_page_pair.second); |
} |