Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1429)

Unified Diff: content/child/service_worker/web_service_worker_provider_impl.cc

Issue 70533005: More scaffolding, add class ServiceWorkerProviderHost. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/child/service_worker/web_service_worker_provider_impl.cc
diff --git a/content/child/service_worker/web_service_worker_provider_impl.cc b/content/child/service_worker/web_service_worker_provider_impl.cc
index a951a5e36bdc820a88eaa3e2fa9ba06750d6dffd..c259f181375b2552b7f6a3922193808759bb560e 100644
--- a/content/child/service_worker/web_service_worker_provider_impl.cc
+++ b/content/child/service_worker/web_service_worker_provider_impl.cc
@@ -4,29 +4,42 @@
#include "content/child/service_worker/web_service_worker_provider_impl.h"
+#include "base/atomic_sequence_num.h"
#include "base/logging.h"
#include "content/child/child_thread.h"
#include "content/child/service_worker/service_worker_dispatcher.h"
-#include "content/child/service_worker/service_worker_message_filter.h"
#include "content/child/thread_safe_sender.h"
#include "content/common/service_worker_messages.h"
-#include "ipc/ipc_sender.h"
-#include "third_party/WebKit/public/platform/WebString.h"
#include "third_party/WebKit/public/platform/WebURL.h"
-using blink::WebString;
using blink::WebURL;
namespace content {
+namespace {
+
+// Must be unique in the child process.
+int GetNextProviderId() {
+ static base::StaticAtomicSequenceNumber sequence;
+ return sequence.GetNext() + 1; // We want to start at 1.
+}
+
+} // namespace
+
WebServiceWorkerProviderImpl::WebServiceWorkerProviderImpl(
ThreadSafeSender* thread_safe_sender,
- ServiceWorkerMessageFilter* message_filter,
- const blink::WebURL& origin,
scoped_ptr<blink::WebServiceWorkerProviderClient> client)
- : thread_safe_sender_(thread_safe_sender), client_(client.Pass()) {}
+ : provider_id_(GetNextProviderId()),
+ thread_safe_sender_(thread_safe_sender),
+ client_(client.Pass()) {
+ thread_safe_sender_->Send(
+ new ServiceWorkerHostMsg_ProviderCreated(provider_id_));
+}
-WebServiceWorkerProviderImpl::~WebServiceWorkerProviderImpl() {}
+WebServiceWorkerProviderImpl::~WebServiceWorkerProviderImpl() {
+ thread_safe_sender_->Send(
+ new ServiceWorkerHostMsg_ProviderDestroyed(provider_id_));
+}
void WebServiceWorkerProviderImpl::registerServiceWorker(
const WebURL& pattern,
« no previous file with comments | « content/child/service_worker/web_service_worker_provider_impl.h ('k') | content/common/service_worker_messages.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698