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..62f6a3d1930a236e17c1ce275a9dbc3467e9029f 100644 |
--- a/content/browser/url_loader_factory_getter.cc |
+++ b/content/browser/url_loader_factory_getter.cc |
@@ -5,17 +5,19 @@ |
#include "content/browser/url_loader_factory_getter.h" |
#include "base/bind.h" |
+#include "content/browser/appcache/appcache_url_loader_factory.h" |
namespace content { |
URLLoaderFactoryGetter::URLLoaderFactoryGetter() {} |
void URLLoaderFactoryGetter::Initialize( |
- mojom::URLLoaderFactoryPtr network_factory) { |
+ mojom::URLLoaderFactoryPtr network_factory, |
+ ChromeAppCacheService* appcache_service) { |
BrowserThread::PostTask( |
BrowserThread::IO, FROM_HERE, |
base::BindOnce(&URLLoaderFactoryGetter::InitializeOnIOThread, this, |
- network_factory.PassInterface())); |
+ network_factory.PassInterface(), appcache_service)); |
} |
mojom::URLLoaderFactoryPtr* URLLoaderFactoryGetter::GetNetworkFactory() { |
@@ -34,11 +36,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, |
+ ChromeAppCacheService* appcache_service) { |
network_factory_.Bind(std::move(network_factory)); |
+ |
+ AppCacheURLLoaderFactory::CreateURLLoaderFactory( |
+ mojo::MakeRequest(&appcache_factory_), appcache_service, this); |
} |
void URLLoaderFactoryGetter::SetTestNetworkFactoryOnIOThread( |