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

Unified Diff: content/browser/service_worker/service_worker_provider_host.cc

Issue 463013002: ServiceWorker: Implement updatefound event and version attributes (Chromium) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: add browser-side implementation and wiring part Created 6 years, 4 months 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/browser/service_worker/service_worker_provider_host.cc
diff --git a/content/browser/service_worker/service_worker_provider_host.cc b/content/browser/service_worker/service_worker_provider_host.cc
index 340b8cfa4cf330ad9c0400463c8d0766391ae9c6..d13702e155e33c21164b3da96332f7a441f6773c 100644
--- a/content/browser/service_worker/service_worker_provider_host.cc
+++ b/content/browser/service_worker/service_worker_provider_host.cc
@@ -11,6 +11,7 @@
#include "content/browser/service_worker/service_worker_controllee_request_handler.h"
#include "content/browser/service_worker/service_worker_dispatcher_host.h"
#include "content/browser/service_worker/service_worker_handle.h"
+#include "content/browser/service_worker/service_worker_registration_handle.h"
#include "content/browser/service_worker/service_worker_utils.h"
#include "content/browser/service_worker/service_worker_version.h"
#include "content/common/service_worker/service_worker_messages.h"
@@ -99,7 +100,11 @@ void ServiceWorkerProviderHost::SetVersionAttributes(
attributes.active = CreateHandleAndPass(active_version);
dispatcher_host_->Send(new ServiceWorkerMsg_SetVersionAttributes(
- kDocumentMainThreadId, provider_id(), mask.changed(), attributes));
+ kDocumentMainThreadId,
+ provider_id(),
+ kInvalidServiceWorkerRegistrationHandleId,
michaeln 2014/08/13 04:18:16 why invalid? ok, now i see why (so handlrefs inst
+ mask.changed(),
+ attributes));
}
void ServiceWorkerProviderHost::SetVersionAttributesInternal(
@@ -242,6 +247,21 @@ ServiceWorkerObjectInfo ServiceWorkerProviderHost::CreateHandleAndPass(
return info;
}
+int ServiceWorkerProviderHost::CreateRegistrationHandleAndPass(
+ ServiceWorkerRegistration* registration) {
+ if (!context_ || !registration)
+ return kInvalidServiceWorkerRegistrationHandleId;
+ scoped_ptr<ServiceWorkerRegistrationHandle> handle(
+ new ServiceWorkerRegistrationHandle(context_,
+ dispatcher_host_,
+ kDocumentMainThreadId,
+ provider_id_,
+ registration));
+ int handle_id = handle->handle_id();
+ dispatcher_host_->RegisterServiceWorkerRegistrationHandle(handle.Pass());
+ return handle_id;
+}
+
bool ServiceWorkerProviderHost::IsContextAlive() {
return context_ != NULL;
}

Powered by Google App Engine
This is Rietveld 408576698