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

Side by Side Diff: components/offline_pages/background/request_queue.cc

Issue 2372043002: [Offline pages] Applying TaskQueue to RequestQueue::ChangeRequestsState (Closed)
Patch Set: Addressing feedback from dougarnett Created 4 years, 2 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 unified diff | Download patch
OLDNEW
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_queue.h" 5 #include "components/offline_pages/background/request_queue.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "base/threading/thread_task_runner_handle.h" 9 #include "base/threading/thread_task_runner_handle.h"
10 #include "components/offline_pages/background/change_requests_state_task.h"
10 #include "components/offline_pages/background/request_queue_store.h" 11 #include "components/offline_pages/background/request_queue_store.h"
11 #include "components/offline_pages/background/save_page_request.h" 12 #include "components/offline_pages/background/save_page_request.h"
12 13
13 namespace offline_pages { 14 namespace offline_pages {
14 15
15 namespace { 16 namespace {
16 // Completes the get requests call. 17 // Completes the get requests call.
17 void GetRequestsDone(const RequestQueue::GetRequestsCallback& callback, 18 void GetRequestsDone(const RequestQueue::GetRequestsCallback& callback,
18 bool success, 19 bool success,
19 std::vector<std::unique_ptr<SavePageRequest>> requests) { 20 std::vector<std::unique_ptr<SavePageRequest>> requests) {
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 result = RequestQueue::UpdateRequestResult::STORE_FAILURE; 66 result = RequestQueue::UpdateRequestResult::STORE_FAILURE;
66 else if (status == ItemActionStatus::NOT_FOUND) 67 else if (status == ItemActionStatus::NOT_FOUND)
67 result = RequestQueue::UpdateRequestResult::REQUEST_DOES_NOT_EXIST; 68 result = RequestQueue::UpdateRequestResult::REQUEST_DOES_NOT_EXIST;
68 else 69 else
69 result = RequestQueue::UpdateRequestResult::SUCCESS; 70 result = RequestQueue::UpdateRequestResult::SUCCESS;
70 } 71 }
71 72
72 callback.Run(result); 73 callback.Run(result);
73 } 74 }
74 75
75 // Handles updating multiple requests at the same time.
76 void UpdateMultipleRequestsDone(
77 const RequestQueue::UpdateMultipleRequestsCallback& callback,
78 const RequestQueue::UpdateMultipleRequestResults& results,
79 std::vector<std::unique_ptr<SavePageRequest>> requests) {
80 callback.Run(results, std::move(requests));
81 }
82
83 // Completes the remove request call. 76 // Completes the remove request call.
84 void RemoveRequestsDone( 77 void RemoveRequestsDone(
85 const RequestQueue::RemoveRequestsCallback& callback, 78 const RequestQueue::RemoveRequestsCallback& callback,
86 const RequestQueue::UpdateMultipleRequestResults& results, 79 const RequestQueue::UpdateMultipleRequestResults& results,
87 std::vector<std::unique_ptr<SavePageRequest>> requests) { 80 std::vector<std::unique_ptr<SavePageRequest>> requests) {
88 callback.Run(results, std::move(requests)); 81 callback.Run(results, std::move(requests));
89 } 82 }
90 83
91 } // namespace 84 } // namespace
92 85
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 } 151 }
159 152
160 void RequestQueue::RemoveRequests(const std::vector<int64_t>& request_ids, 153 void RequestQueue::RemoveRequests(const std::vector<int64_t>& request_ids,
161 const RemoveRequestsCallback& callback) { 154 const RemoveRequestsCallback& callback) {
162 store_->RemoveRequests(request_ids, base::Bind(RemoveRequestsDone, callback)); 155 store_->RemoveRequests(request_ids, base::Bind(RemoveRequestsDone, callback));
163 } 156 }
164 157
165 void RequestQueue::ChangeRequestsState( 158 void RequestQueue::ChangeRequestsState(
166 const std::vector<int64_t>& request_ids, 159 const std::vector<int64_t>& request_ids,
167 const SavePageRequest::RequestState new_state, 160 const SavePageRequest::RequestState new_state,
168 const UpdateMultipleRequestsCallback& callback) { 161 const RequestQueue::UpdateCallback& callback) {
169 store_->ChangeRequestsState(request_ids, new_state, 162 std::unique_ptr<Task> task(new ChangeRequestsStateTask(
170 base::Bind(UpdateMultipleRequestsDone, callback)); 163 store_.get(), request_ids, new_state, callback));
164 task_queue_.AddTask(std::move(task));
171 } 165 }
172 166
173 void RequestQueue::PurgeRequests(const PurgeRequestsCallback& callback) {} 167 void RequestQueue::PurgeRequests(const PurgeRequestsCallback& callback) {}
174 168
175 } // namespace offline_pages 169 } // namespace offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698