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

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

Issue 2189443004: Cleanup old TODOs that got done or are no longer relevant. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_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 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 54
55 bool RequestCoordinator::SavePageLater( 55 bool RequestCoordinator::SavePageLater(
56 const GURL& url, const ClientId& client_id, bool was_user_requested) { 56 const GURL& url, const ClientId& client_id, bool was_user_requested) {
57 DVLOG(2) << "URL is " << url << " " << __func__; 57 DVLOG(2) << "URL is " << url << " " << __func__;
58 58
59 // TODO(petewil): We need a robust scheme for allocating new IDs. We may need 59 // TODO(petewil): We need a robust scheme for allocating new IDs. We may need
60 // GUIDS for the downloads home design. 60 // GUIDS for the downloads home design.
61 static int64_t id = 0; 61 static int64_t id = 0;
62 62
63 // Build a SavePageRequest. 63 // Build a SavePageRequest.
64 // TODO(petewil): Use something like base::Clock to help in testing.
65 offline_pages::SavePageRequest request( 64 offline_pages::SavePageRequest request(
66 id++, url, client_id, base::Time::Now(), was_user_requested); 65 id++, url, client_id, base::Time::Now(), was_user_requested);
67 66
68 // Put the request on the request queue. 67 // Put the request on the request queue.
69 queue_->AddRequest(request, 68 queue_->AddRequest(request,
70 base::Bind(&RequestCoordinator::AddRequestResultCallback, 69 base::Bind(&RequestCoordinator::AddRequestResultCallback,
71 weak_ptr_factory_.GetWeakPtr())); 70 weak_ptr_factory_.GetWeakPtr()));
72 return true; 71 return true;
73 } 72 }
74 73
75 void RequestCoordinator::AddRequestResultCallback( 74 void RequestCoordinator::AddRequestResultCallback(
76 RequestQueue::AddRequestResult result, 75 RequestQueue::AddRequestResult result,
77 const SavePageRequest& request) { 76 const SavePageRequest& request) {
78 77
79 // Inform the scheduler that we have an outstanding task. 78 // Inform the scheduler that we have an outstanding task..
80 // TODO(petewil): Determine trigger conditions from policy.
81 scheduler_->Schedule(GetTriggerConditionsForUserRequest()); 79 scheduler_->Schedule(GetTriggerConditionsForUserRequest());
82 } 80 }
83 81
84 // Called in response to updating a request in the request queue. 82 // Called in response to updating a request in the request queue.
85 void RequestCoordinator::UpdateRequestCallback( 83 void RequestCoordinator::UpdateRequestCallback(
86 RequestQueue::UpdateRequestResult result) { 84 RequestQueue::UpdateRequestResult result) {
87 // If the request succeeded, nothing to do. If it failed, we can't really do 85 // If the request succeeded, nothing to do. If it failed, we can't really do
88 // much, so just log it. 86 // much, so just log it.
89 if (result != RequestQueue::UpdateRequestResult::SUCCESS) { 87 if (result != RequestQueue::UpdateRequestResult::SUCCESS) {
90 // TODO(petewil): Consider adding UMA or showing on offline-internals page. 88 // TODO(petewil): Consider adding UMA or showing on offline-internals page.
(...skipping 23 matching lines...) Expand all
114 const base::Callback<void(bool)>& callback) { 112 const base::Callback<void(bool)>& callback) {
115 current_conditions_.reset(new DeviceConditions(device_conditions)); 113 current_conditions_.reset(new DeviceConditions(device_conditions));
116 if (is_busy_) return false; 114 if (is_busy_) return false;
117 115
118 // Mark the time at which we started processing so we can check our time 116 // Mark the time at which we started processing so we can check our time
119 // budget. 117 // budget.
120 operation_start_time_ = base::Time::Now(); 118 operation_start_time_ = base::Time::Now();
121 119
122 is_canceled_ = false; 120 is_canceled_ = false;
123 scheduler_callback_ = callback; 121 scheduler_callback_ = callback;
124 // TODO(petewil): Check existing conditions (should be passed down from
125 // BackgroundTask)
126 122
127 TryNextRequest(); 123 TryNextRequest();
128 124
129 return true; 125 return true;
130 } 126 }
131 127
132 void RequestCoordinator::TryNextRequest() { 128 void RequestCoordinator::TryNextRequest() {
133 // If there is no time left in the budget, return to the scheduler. 129 // If there is no time left in the budget, return to the scheduler.
134 // We do not remove the pending task that was set up earlier in case 130 // We do not remove the pending task that was set up earlier in case
135 // we run out of time, so the background scheduler will return to us 131 // we run out of time, so the background scheduler will return to us
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 return trigger_conditions; 241 return trigger_conditions;
246 } 242 }
247 243
248 void RequestCoordinator::GetOffliner() { 244 void RequestCoordinator::GetOffliner() {
249 if (!offliner_) { 245 if (!offliner_) {
250 offliner_ = factory_->GetOffliner(policy_.get()); 246 offliner_ = factory_->GetOffliner(policy_.get());
251 } 247 }
252 } 248 }
253 249
254 } // namespace offline_pages 250 } // namespace offline_pages
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698