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

Unified Diff: components/offline_pages/background/request_coordinator.cc

Issue 2277123002: [Offline pages] Hooking up cancel/pause/resume buttons for offline page related notifications (Closed)
Patch Set: Rebasing Created 4 years, 4 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/background/request_coordinator.cc
diff --git a/components/offline_pages/background/request_coordinator.cc b/components/offline_pages/background/request_coordinator.cc
index adb3d955b4968817a02b4a5d5fe06c72a38cb12d..cf4258b7d5300149498768628cede1595f06a7ce 100644
--- a/components/offline_pages/background/request_coordinator.cc
+++ b/components/offline_pages/background/request_coordinator.cc
@@ -158,7 +158,8 @@ void RequestCoordinator::RemoveRequests(
queue_->RemoveRequests(
request_ids,
base::Bind(&RequestCoordinator::HandleRemovedRequestsAndCallback,
- weak_ptr_factory_.GetWeakPtr(), callback));
+ weak_ptr_factory_.GetWeakPtr(), callback,
+ SavePageStatus::REMOVED));
if (canceled)
TryNextRequest();
}
@@ -215,17 +216,19 @@ void RequestCoordinator::UpdateMultipleRequestsCallback(
void RequestCoordinator::HandleRemovedRequestsAndCallback(
const RemoveRequestsCallback& callback,
+ SavePageStatus status,
const RequestQueue::UpdateMultipleRequestResults& results,
const std::vector<SavePageRequest>& requests) {
callback.Run(results);
- HandleRemovedRequests(results, requests);
+ HandleRemovedRequests(status, results, requests);
}
void RequestCoordinator::HandleRemovedRequests(
+ SavePageStatus status,
const RequestQueue::UpdateMultipleRequestResults& results,
const std::vector<SavePageRequest>& requests) {
for (SavePageRequest request : requests)
- NotifyCompleted(request, SavePageStatus::REMOVED);
+ NotifyCompleted(request, status);
}
void RequestCoordinator::StopProcessing() {
@@ -367,9 +370,9 @@ void RequestCoordinator::OfflinerDoneCallback(const SavePageRequest& request,
std::vector<int64_t> remove_requests;
remove_requests.push_back(request.request_id());
queue_->RemoveRequests(
- remove_requests, base::Bind(&RequestCoordinator::HandleRemovedRequests,
- weak_ptr_factory_.GetWeakPtr()));
- NotifyCompleted(request, SavePageStatus::SUCCESS);
+ remove_requests,
+ base::Bind(&RequestCoordinator::HandleRemovedRequests,
+ weak_ptr_factory_.GetWeakPtr(), SavePageStatus::SUCCESS));
} else if (request.completed_attempt_count() + 1 >=
policy_->GetMaxCompletedTries()) {
// Remove from the request queue if we exceeeded max retries. The +1
@@ -380,8 +383,8 @@ void RequestCoordinator::OfflinerDoneCallback(const SavePageRequest& request,
remove_requests.push_back(request.request_id());
queue_->RemoveRequests(
remove_requests, base::Bind(&RequestCoordinator::HandleRemovedRequests,
- weak_ptr_factory_.GetWeakPtr()));
- NotifyCompleted(request, SavePageStatus::RETRY_COUNT_EXCEEDED);
+ weak_ptr_factory_.GetWeakPtr(),
+ SavePageStatus::RETRY_COUNT_EXCEEDED));
} else {
// If we failed, but are not over the limit, update the request in the
// queue.

Powered by Google App Engine
This is Rietveld 408576698