| Index: content/child/service_worker/service_worker_network_provider.cc
|
| diff --git a/content/child/service_worker/service_worker_network_provider.cc b/content/child/service_worker/service_worker_network_provider.cc
|
| index 364d0dcbfe4fb69e144529eddb14048c91f29250..052ef10246f0948135f40d6d0a3d767e692f213a 100644
|
| --- a/content/child/service_worker/service_worker_network_provider.cc
|
| +++ b/content/child/service_worker/service_worker_network_provider.cc
|
| @@ -7,6 +7,7 @@
|
| #include "base/atomic_sequence_num.h"
|
| #include "content/child/child_thread_impl.h"
|
| #include "content/child/request_extra_data.h"
|
| +#include "content/child/service_worker/service_worker_dispatcher.h"
|
| #include "content/child/service_worker/service_worker_handle_reference.h"
|
| #include "content/child/service_worker/service_worker_provider_context.h"
|
| #include "content/common/navigation_params.h"
|
| @@ -207,6 +208,28 @@ ServiceWorkerNetworkProvider::ServiceWorkerNetworkProvider(
|
| GetNextProviderId(),
|
| is_parent_frame_secure) {}
|
|
|
| +ServiceWorkerNetworkProvider::ServiceWorkerNetworkProvider(
|
| + mojom::ServiceWorkerProviderClientInfoPtr info)
|
| + : provider_id_(info->provider_id) {
|
| + context_ = new ServiceWorkerProviderContext(
|
| + provider_id_, info->type, std::move(info->client_request),
|
| + ChildThreadImpl::current()->thread_safe_sender());
|
| +
|
| + if (info->script_loader_factory_ptr_info.is_valid())
|
| + script_loader_factory_.Bind(
|
| + std::move(info->script_loader_factory_ptr_info));
|
| +
|
| + ServiceWorkerDispatcher* dispatcher =
|
| + ServiceWorkerDispatcher::GetOrCreateThreadSpecificInstance(
|
| + ChildThreadImpl::current()->thread_safe_sender(),
|
| + base::ThreadTaskRunnerHandle::Get().get());
|
| + // TODO(shimazu): Set registration/attributes directly to |context_|.
|
| + dispatcher->OnAssociateRegistration(-1, info->provider_id, info->registration,
|
| + info->attributes);
|
| +
|
| + provider_host_.Bind(std::move(info->host_ptr_info));
|
| +}
|
| +
|
| ServiceWorkerNetworkProvider::ServiceWorkerNetworkProvider()
|
| : provider_id_(kInvalidServiceWorkerProviderId) {}
|
|
|
| @@ -218,16 +241,6 @@ ServiceWorkerNetworkProvider::~ServiceWorkerNetworkProvider() {
|
| provider_host_.reset();
|
| }
|
|
|
| -void ServiceWorkerNetworkProvider::SetServiceWorkerVersionId(
|
| - int64_t version_id,
|
| - int embedded_worker_id) {
|
| - DCHECK_NE(kInvalidServiceWorkerProviderId, provider_id_);
|
| - if (!ChildThreadImpl::current())
|
| - return; // May be null in some tests.
|
| - dispatcher_host_->OnSetHostedVersionId(provider_id(), version_id,
|
| - embedded_worker_id);
|
| -}
|
| -
|
| bool ServiceWorkerNetworkProvider::IsControlledByServiceWorker() const {
|
| if (ServiceWorkerUtils::IsServicificationEnabled()) {
|
| // Interception for subresource loading is not working (yet)
|
|
|