Index: content/browser/service_worker/service_worker_context_core.cc |
diff --git a/content/browser/service_worker/service_worker_context_core.cc b/content/browser/service_worker/service_worker_context_core.cc |
index 910fe81e224e78c4a6ccb86362db23b5b383c4f8..dc69eda8a75df47ba0a0775434e38005cf97c949 100644 |
--- a/content/browser/service_worker/service_worker_context_core.cc |
+++ b/content/browser/service_worker/service_worker_context_core.cc |
@@ -31,6 +31,7 @@ |
#include "url/gurl.h" |
namespace content { |
+ |
namespace { |
void SuccessCollectorCallback(const base::Closure& done_closure, |
@@ -228,6 +229,25 @@ ServiceWorkerContextCore::GetClientProviderHostIterator(const GURL& origin) { |
providers_.get(), base::Bind(IsSameOriginClientProviderHost, origin))); |
} |
+scoped_ptr<ServiceWorkerProviderHost> |
+ServiceWorkerContextCore::CreateBrowserProviderHost(int provider_id) { |
+ return scoped_ptr<ServiceWorkerProviderHost>(new ServiceWorkerProviderHost( |
+ ServiceWorkerProviderHost::kVirtualProcessIDForBrowserRequest, |
+ MSG_ROUTING_NONE, provider_id, SERVICE_WORKER_PROVIDER_FOR_WINDOW, |
+ AsWeakPtr(), nullptr)); |
+} |
+ |
+void ServiceWorkerContextCore::RegisterBrowserProviderHost( |
+ scoped_ptr<ServiceWorkerProviderHost> provider_host) { |
+ browser_provider_host_map_.add(provider_host->provider_id(), |
+ provider_host.Pass()); |
+} |
+ |
+scoped_ptr<ServiceWorkerProviderHost> |
+ServiceWorkerContextCore::TakeBrowserProviderHost(int provider_id) { |
+ return browser_provider_host_map_.take(provider_id); |
+} |
+ |
void ServiceWorkerContextCore::RegisterProviderHostByClientID( |
const std::string& client_uuid, |
ServiceWorkerProviderHost* provider_host) { |