Chromium Code Reviews| Index: content/browser/background_fetch/background_fetch_job_response_data.cc |
| diff --git a/content/browser/background_fetch/background_fetch_job_response_data.cc b/content/browser/background_fetch/background_fetch_job_response_data.cc |
| index 939d80a956c852beb5e9fbe3cde99eb405a06c20..b4a8ee88ad1217ada216519bcf9ae3d2797bc91f 100644 |
| --- a/content/browser/background_fetch/background_fetch_job_response_data.cc |
| +++ b/content/browser/background_fetch/background_fetch_job_response_data.cc |
| @@ -4,25 +4,43 @@ |
| #include "content/browser/background_fetch/background_fetch_job_response_data.h" |
| +#include "base/time/time.h" |
| +#include "content/browser/background_fetch/background_fetch_request_info.h" |
| +#include "url/gurl.h" |
| + |
| namespace content { |
| BackgroundFetchJobResponseData::BackgroundFetchJobResponseData( |
| size_t num_requests, |
| const BackgroundFetchResponseCompleteCallback& completion_callback) |
| - : blobs_(num_requests), |
| - num_requests_(num_requests), |
| + : num_requests_(num_requests), |
| completion_callback_(std::move(completion_callback)) {} |
| BackgroundFetchJobResponseData::~BackgroundFetchJobResponseData() {} |
| void BackgroundFetchJobResponseData::AddResponse( |
| - int request_num, |
| + const BackgroundFetchRequestInfo& request_info, |
| std::unique_ptr<BlobHandle> response) { |
| - blobs_[request_num] = std::move(response); |
| + auto urls = base::MakeUnique<std::vector<GURL>>(std::vector<GURL>()); |
| + urls->push_back(request_info.url()); |
| + |
| + // TODO(harkness): Fill in headers and status code/text. |
| + auto headers = base::MakeUnique<ServiceWorkerHeaderMap>(); |
| + responses_.emplace_back(ServiceWorkerResponse( |
|
Peter Beverloo
2017/03/27 11:05:16
You're now invoking the copy constructor. The argu
Peter Beverloo
2017/03/27 11:05:16
To confirm, we still plan on getting rid of Backgr
harkness
2017/03/27 12:23:19
Done.
harkness
2017/03/27 12:23:19
I have questions about how we're going to update t
|
| + std::move(urls), 0 /* status code */, std::string("") /* status text */, |
| + blink::WebServiceWorkerResponseTypeBasic, std::move(headers), |
| + response->GetUUID(), request_info.received_bytes(), GURL(), |
| + blink::WebServiceWorkerResponseErrorUnknown, |
| + base::Time() /* response time */, false /* is_in_cache_storage */, |
| + std::string("") /* cache_storage_cache_name */, |
| + base::MakeUnique<ServiceWorkerHeaderList>())); |
| + |
| + blobs_.push_back(std::move(response)); |
| completed_requests_++; |
| if (completed_requests_ == num_requests_) { |
| - std::move(completion_callback_).Run(std::move(blobs_)); |
| + std::move(completion_callback_) |
| + .Run(std::move(responses_), std::move(blobs_)); |
| } |
| } |