Index: content/network/network_service.cc |
diff --git a/content/network/network_service.cc b/content/network/network_service.cc |
index 4ced68608cf2033efe37e426d31a25912a4b1c40..f4bcd48f4fec7cd9db8dacd102adb765351e3d10 100644 |
--- a/content/network/network_service.cc |
+++ b/content/network/network_service.cc |
@@ -6,6 +6,7 @@ |
#include "base/logging.h" |
#include "base/memory/ptr_util.h" |
+#include "content/network/cache_url_loader.h" |
#include "content/network/network_service_url_loader_factory_impl.h" |
#include "services/service_manager/public/cpp/bind_source_info.h" |
@@ -14,8 +15,10 @@ namespace content { |
NetworkService::NetworkService( |
std::unique_ptr<service_manager::BinderRegistry> registry) |
: registry_(std::move(registry)) { |
- registry_->AddInterface<mojom::URLLoaderFactory>( |
- base::Bind(&NetworkService::Create, base::Unretained(this))); |
+ registry_->AddInterface<mojom::URLLoaderFactory>(base::Bind( |
+ &NetworkService::CreateURLLoaderFactory, base::Unretained(this))); |
+ registry_->AddInterface<mojom::NetworkService>(base::Bind( |
+ &NetworkService::CreateNetworkService, base::Unretained(this))); |
} |
NetworkService::~NetworkService() = default; |
@@ -28,11 +31,24 @@ void NetworkService::OnBindInterface( |
std::move(interface_pipe)); |
} |
-void NetworkService::Create(const service_manager::BindSourceInfo& source_info, |
- mojom::URLLoaderFactoryRequest request) { |
+void NetworkService::CreateURLLoaderFactory( |
+ const service_manager::BindSourceInfo& source_info, |
+ mojom::URLLoaderFactoryRequest request) { |
loader_factory_bindings_.AddBinding( |
base::MakeUnique<NetworkServiceURLLoaderFactoryImpl>(&context_), |
std::move(request)); |
} |
+void NetworkService::CreateNetworkService( |
+ const service_manager::BindSourceInfo& source_info, |
+ mojom::NetworkServiceRequest request) { |
+ network_service_bindings_.AddBinding(this, std::move(request)); |
+} |
+ |
+void NetworkService::HandleViewCacheRequest(const ResourceRequest& request, |
+ mojom::URLLoaderClientPtr client) { |
+ StartCacheURLLoader(request, context_.url_request_context(), |
+ std::move(client)); |
+} |
+ |
} // namespace content |