Commit 158774bd authored by Henrique Nakashima's avatar Henrique Nakashima Committed by Commit Bot

Use SystemNetworkContextManager's SharedURLLoaderFactory in Prefetch.

PrefetchServiceFactory currently uses the URLLoaderFactory from Profile.
To make it a SimpleKeyedServiceFactory, all dependencies to Profile must
be severed.

Bug: 953918
Change-Id: Icfd72e0e468a18065936d8d1286fb426fd19326b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1603386Reviewed-by: default avatarMin Qin <qinmin@chromium.org>
Reviewed-by: default avatarCarlos Knippschild <carlosk@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Cr-Commit-Position: refs/heads/master@{#659615}
parent 9df2bdcc
......@@ -15,6 +15,7 @@
#include "chrome/browser/chrome_content_browser_client.h"
#include "chrome/browser/download/download_service_factory.h"
#include "chrome/browser/image_fetcher/image_fetcher_service_factory.h"
#include "chrome/browser/net/system_network_context_manager.h"
#include "chrome/browser/ntp_snippets/content_suggestions_service_factory.h"
#include "chrome/browser/offline_pages/offline_page_model_factory.h"
#include "chrome/browser/offline_pages/prefetch/offline_metrics_collector_impl.h"
......@@ -105,9 +106,21 @@ KeyedService* PrefetchServiceFactory::BuildServiceInstanceFor(
auto prefetch_dispatcher =
std::make_unique<PrefetchDispatcherImpl>(profile->GetPrefs());
auto* system_network_context_manager =
SystemNetworkContextManager::GetInstance();
scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory;
if (system_network_context_manager) {
url_loader_factory =
system_network_context_manager->GetSharedURLLoaderFactory();
} else {
// In unit_tests, NetworkService might not be available and
// |system_network_context_manager| would be null.
url_loader_factory = nullptr;
}
auto prefetch_network_request_factory =
std::make_unique<PrefetchNetworkRequestFactoryImpl>(
profile->GetURLLoaderFactory(), chrome::GetChannel(), GetUserAgent(),
url_loader_factory, chrome::GetChannel(), GetUserAgent(),
profile->GetPrefs());
scoped_refptr<base::SequencedTaskRunner> background_task_runner =
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment