Chromium Code Reviews| Index: content/browser/url_loader_factory_getter.cc |
| diff --git a/content/browser/url_loader_factory_getter.cc b/content/browser/url_loader_factory_getter.cc |
| index be9038340184bd980f2be19d987daf5bcc2833f2..5ea9d126d7ce26dc8bdb866fa7db5df8741dbb0f 100644 |
| --- a/content/browser/url_loader_factory_getter.cc |
| +++ b/content/browser/url_loader_factory_getter.cc |
| @@ -5,17 +5,27 @@ |
| #include "content/browser/url_loader_factory_getter.h" |
| #include "base/bind.h" |
| +#include "content/browser/appcache/appcache_url_loader_factory.h" |
| +#include "content/browser/storage_partition_impl.h" |
| +#include "content/common/network_service.mojom.h" |
| + |
| namespace content { |
| URLLoaderFactoryGetter::URLLoaderFactoryGetter() {} |
| void URLLoaderFactoryGetter::Initialize( |
| - mojom::URLLoaderFactoryPtr network_factory) { |
| + StoragePartitionImpl* partition) { |
| + mojom::URLLoaderFactoryPtr network_factory; |
| + partition->network_context()->CreateURLLoaderFactory( |
| + MakeRequest(&network_factory), 0); |
| + |
| BrowserThread::PostTask( |
| BrowserThread::IO, FROM_HERE, |
| base::BindOnce(&URLLoaderFactoryGetter::InitializeOnIOThread, this, |
| - network_factory.PassInterface())); |
| + network_factory.PassInterface(), |
| + scoped_refptr<ChromeAppCacheService>( |
| + partition->GetAppCacheService()))); |
|
jam
2017/05/18 14:16:14
nit: indentation
ananta
2017/05/18 19:13:52
Done.
|
| } |
| mojom::URLLoaderFactoryPtr* URLLoaderFactoryGetter::GetNetworkFactory() { |
| @@ -34,11 +44,20 @@ void URLLoaderFactoryGetter::SetNetworkFactoryForTesting( |
| this, test_factory.PassInterface())); |
| } |
| +mojom::URLLoaderFactoryPtr* URLLoaderFactoryGetter::GetAppCacheFactory() { |
| + DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| + return &appcache_factory_; |
| +} |
| + |
| URLLoaderFactoryGetter::~URLLoaderFactoryGetter() {} |
| void URLLoaderFactoryGetter::InitializeOnIOThread( |
| - mojom::URLLoaderFactoryPtrInfo network_factory) { |
| + mojom::URLLoaderFactoryPtrInfo network_factory, |
| + scoped_refptr<ChromeAppCacheService> appcache_service) { |
| network_factory_.Bind(std::move(network_factory)); |
| + |
| + AppCacheURLLoaderFactory::CreateURLLoaderFactory( |
| + mojo::MakeRequest(&appcache_factory_), appcache_service.get(), this); |
| } |
| void URLLoaderFactoryGetter::SetTestNetworkFactoryOnIOThread( |