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

Unified Diff: content/browser/background_fetch/background_fetch_context.cc

Issue 2767373002: Implement GetJobResponse and merge JobData into DataManager. (Closed)
Patch Set: Removed typedef and added DISALLOW_COPY_AND_ASSIGN Created 3 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/background_fetch/background_fetch_context.cc
diff --git a/content/browser/background_fetch/background_fetch_context.cc b/content/browser/background_fetch/background_fetch_context.cc
index 21f3dcd0d3790a440166a6284f8c338c0cd3092e..ff91c2a376b459ed1dc2776857723c5e177a3a69 100644
--- a/content/browser/background_fetch/background_fetch_context.cc
+++ b/content/browser/background_fetch/background_fetch_context.cc
@@ -20,7 +20,7 @@ BackgroundFetchContext::BackgroundFetchContext(
: browser_context_(browser_context),
storage_partition_(storage_partition),
service_worker_context_(service_worker_context),
- background_fetch_data_manager_(this) {
+ background_fetch_data_manager_(browser_context) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
// TODO(harkness): BackgroundFetchContext should have
// ServiceWorkerContextObserver as a parent class and should register as an
@@ -56,25 +56,21 @@ void BackgroundFetchContext::ShutdownOnIO() {
void BackgroundFetchContext::CreateRequest(
std::unique_ptr<BackgroundFetchJobInfo> job_info,
- std::vector<BackgroundFetchRequestInfo>& request_infos) {
+ std::vector<std::unique_ptr<BackgroundFetchRequestInfo>> request_infos) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
DCHECK_GE(1U, request_infos.size());
// Inform the data manager about the new download.
const std::string job_guid = job_info->guid();
- std::unique_ptr<BackgroundFetchJobData> job_data =
- background_fetch_data_manager_.CreateRequest(std::move(job_info),
- request_infos);
-
- // If job_data is null, the DataManager will have logged an error.
- if (job_data) {
- // Create a controller which drives the processing of the job. It will use
- // the JobData to get information about individual requests for the job.
- job_map_[job_guid] = base::MakeUnique<BackgroundFetchJobController>(
- job_guid, browser_context_, storage_partition_, std::move(job_data),
- base::BindOnce(&BackgroundFetchContext::DidCompleteJob, this,
- job_guid));
- }
+ background_fetch_data_manager_.CreateRequest(std::move(job_info),
+ std::move(request_infos));
+
+ // Create a controller which drives the processing of the job. It will use
+ // the DataManager to get information about individual requests for the job.
+ job_map_[job_guid] = base::MakeUnique<BackgroundFetchJobController>(
+ job_guid, browser_context_, storage_partition_,
+ &background_fetch_data_manager_,
+ base::BindOnce(&BackgroundFetchContext::DidCompleteJob, this, job_guid));
}
void BackgroundFetchContext::DidCompleteJob(const std::string& job_guid) {

Powered by Google App Engine
This is Rietveld 408576698