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

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

Issue 2489443002: Move all components/offline_pages/ files into component/offline_pages/core (Closed)
Patch Set: rebase Created 4 years 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/change_requests_state_task.cc
diff --git a/components/offline_pages/background/change_requests_state_task.cc b/components/offline_pages/background/change_requests_state_task.cc
deleted file mode 100644
index 545d8c78469bbdadeff605f7b2fd38b00c1f9e13..0000000000000000000000000000000000000000
--- a/components/offline_pages/background/change_requests_state_task.cc
+++ /dev/null
@@ -1,77 +0,0 @@
-// Copyright 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "components/offline_pages/background/change_requests_state_task.h"
-
-#include "base/bind.h"
-
-namespace offline_pages {
-
-ChangeRequestsStateTask::ChangeRequestsStateTask(
- RequestQueueStore* store,
- const std::vector<int64_t>& request_ids,
- const SavePageRequest::RequestState new_state,
- const RequestQueueStore::UpdateCallback& callback)
- : store_(store),
- request_ids_(request_ids.begin(), request_ids.end()),
- new_state_(new_state),
- callback_(callback),
- weak_ptr_factory_(this) {}
-
-ChangeRequestsStateTask::~ChangeRequestsStateTask() {}
-
-void ChangeRequestsStateTask::Run() {
- ReadRequests();
-}
-
-void ChangeRequestsStateTask::ReadRequests() {
- std::vector<int64_t> request_ids(request_ids_.begin(), request_ids_.end());
- store_->GetRequestsByIds(request_ids,
- base::Bind(&ChangeRequestsStateTask::UpdateRequests,
- weak_ptr_factory_.GetWeakPtr()));
-}
-
-void ChangeRequestsStateTask::UpdateRequests(
- std::unique_ptr<UpdateRequestsResult> read_result) {
- if (read_result->store_state != StoreState::LOADED ||
- read_result->updated_items.empty()) {
- UpdateCompleted(std::move(read_result));
- return;
- }
-
- // We are only going to make an update to the items that were found. Statuses
- // of the missing items will be added at the end.
- std::vector<SavePageRequest> items_to_update;
- for (auto request : read_result->updated_items) {
- request.set_request_state(new_state_);
- items_to_update.push_back(request);
- }
-
- store_->UpdateRequests(items_to_update,
- base::Bind(&ChangeRequestsStateTask::UpdateCompleted,
- weak_ptr_factory_.GetWeakPtr()));
-}
-
-void ChangeRequestsStateTask::UpdateCompleted(
- std::unique_ptr<UpdateRequestsResult> update_result) {
- // Because the first step might not have found some of the items, we should
- // look their IDs now and include in the final result as not found.
-
- // Look up the missing items by removing the items present in the result
- // statuses from original list of request IDs.
- for (const auto& id_status_pair : update_result->item_statuses)
- request_ids_.erase(id_status_pair.first);
-
- // Update the final result for the items that are left in |request_ids_|, as
- // these are identified as being missing from the final result.
- for (int64_t request_id : request_ids_) {
- update_result->item_statuses.push_back(
- std::make_pair(request_id, ItemActionStatus::NOT_FOUND));
- }
-
- callback_.Run(std::move(update_result));
- TaskComplete();
-}
-
-} // namespace offline_pages

Powered by Google App Engine
This is Rietveld 408576698