| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/offline_pages/background/request_coordinator.h" | 5 #include "components/offline_pages/background/request_coordinator.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 474 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 485 is_busy_ = false; | 485 is_busy_ = false; |
| 486 active_request_.reset(nullptr); | 486 active_request_.reset(nullptr); |
| 487 | 487 |
| 488 if (status == Offliner::RequestStatus::FOREGROUND_CANCELED || | 488 if (status == Offliner::RequestStatus::FOREGROUND_CANCELED || |
| 489 status == Offliner::RequestStatus::PRERENDERING_CANCELED) { | 489 status == Offliner::RequestStatus::PRERENDERING_CANCELED) { |
| 490 // Update the request for the canceled attempt. | 490 // Update the request for the canceled attempt. |
| 491 // TODO(dougarnett): See if we can conclusively identify other attempt | 491 // TODO(dougarnett): See if we can conclusively identify other attempt |
| 492 // aborted cases to treat this way (eg, for Render Process Killed). | 492 // aborted cases to treat this way (eg, for Render Process Killed). |
| 493 SavePageRequest updated_request(request); | 493 SavePageRequest updated_request(request); |
| 494 AbortRequestAttempt(&updated_request); | 494 AbortRequestAttempt(&updated_request); |
| 495 BackgroundSavePageResult notify_status = | 495 NotifyChanged(updated_request); |
| 496 (status == Offliner::RequestStatus::FOREGROUND_CANCELED) | |
| 497 ? BackgroundSavePageResult::FOREGROUND_CANCELED | |
| 498 : BackgroundSavePageResult::PRERENDER_CANCELED; | |
| 499 NotifyCompleted(updated_request, notify_status); | |
| 500 } else if (status == Offliner::RequestStatus::SAVED) { | 496 } else if (status == Offliner::RequestStatus::SAVED) { |
| 501 // Remove the request from the queue if it succeeded. | 497 // Remove the request from the queue if it succeeded. |
| 502 RemoveAttemptedRequest(request, BackgroundSavePageResult::SUCCESS); | 498 RemoveAttemptedRequest(request, BackgroundSavePageResult::SUCCESS); |
| 503 } else if (request.completed_attempt_count() + 1 >= | 499 } else if (request.completed_attempt_count() + 1 >= |
| 504 policy_->GetMaxCompletedTries()) { | 500 policy_->GetMaxCompletedTries()) { |
| 505 // Remove from the request queue if we exceeded max retries. The +1 | 501 // Remove from the request queue if we exceeded max retries. The +1 |
| 506 // represents the request that just completed. Since we call | 502 // represents the request that just completed. Since we call |
| 507 // MarkAttemptCompleted within the if branches, the completed_attempt_count | 503 // MarkAttemptCompleted within the if branches, the completed_attempt_count |
| 508 // has not yet been updated when we are checking the if condition. | 504 // has not yet been updated when we are checking the if condition. |
| 509 RemoveAttemptedRequest(request, | 505 RemoveAttemptedRequest(request, |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 574 FOR_EACH_OBSERVER(Observer, observers_, OnChanged(request)); | 570 FOR_EACH_OBSERVER(Observer, observers_, OnChanged(request)); |
| 575 } | 571 } |
| 576 | 572 |
| 577 void RequestCoordinator::GetOffliner() { | 573 void RequestCoordinator::GetOffliner() { |
| 578 if (!offliner_) { | 574 if (!offliner_) { |
| 579 offliner_ = factory_->GetOffliner(policy_.get()); | 575 offliner_ = factory_->GetOffliner(policy_.get()); |
| 580 } | 576 } |
| 581 } | 577 } |
| 582 | 578 |
| 583 } // namespace offline_pages | 579 } // namespace offline_pages |
| OLD | NEW |