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

Unified Diff: Source/modules/serviceworkers/ServiceWorkerRegistration.h

Issue 1317473002: ServiceWorker: Clean up ownership management of WebServiceWorkerRegistration (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: incorporate review comment Created 5 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: Source/modules/serviceworkers/ServiceWorkerRegistration.h
diff --git a/Source/modules/serviceworkers/ServiceWorkerRegistration.h b/Source/modules/serviceworkers/ServiceWorkerRegistration.h
index 3d9e98612df9b2dd50492bb1faccb6cd1e30682f..737ff677c1aa7fb24a30eafa071754beb781d81f 100644
--- a/Source/modules/serviceworkers/ServiceWorkerRegistration.h
+++ b/Source/modules/serviceworkers/ServiceWorkerRegistration.h
@@ -5,6 +5,7 @@
#ifndef ServiceWorkerRegistration_h
#define ServiceWorkerRegistration_h
+#include "bindings/core/v8/ScriptPromiseResolver.h"
#include "core/dom/ActiveDOMObject.h"
#include "core/events/EventTarget.h"
#include "modules/serviceworkers/ServiceWorker.h"
@@ -20,7 +21,6 @@
namespace blink {
class ScriptPromise;
-class ScriptPromiseResolver;
class ScriptState;
class WebServiceWorkerProvider;
@@ -43,9 +43,7 @@ public:
void setWaiting(WebServiceWorker*) override;
void setActive(WebServiceWorker*) override;
- static ServiceWorkerRegistration* from(ExecutionContext*, WebServiceWorkerRegistration*);
- static ServiceWorkerRegistration* take(ScriptPromiseResolver*, WebServiceWorkerRegistration*);
- static void dispose(WebServiceWorkerRegistration*);
+ static ServiceWorkerRegistration* create(ExecutionContext*, PassOwnPtr<WebServiceWorkerRegistration>);
ServiceWorker* installing() { return m_installing; }
ServiceWorker* waiting() { return m_waiting; }
@@ -67,7 +65,6 @@ public:
DECLARE_VIRTUAL_TRACE();
private:
- static ServiceWorkerRegistration* getOrCreate(ExecutionContext*, WebServiceWorkerRegistration*);
ServiceWorkerRegistration(ExecutionContext*, PassOwnPtr<WebServiceWorkerRegistration>);
// ActiveDOMObject overrides.
@@ -90,15 +87,9 @@ public:
{
HeapVector<Member<ServiceWorkerRegistration>> registrations;
for (WebServiceWorkerRegistration* registration : *webServiceWorkerRegistrations)
- registrations.append(ServiceWorkerRegistration::take(resolver, registration));
+ registrations.append(ServiceWorkerRegistration::create(resolver->executionContext(), adoptPtr(registration)));
return registrations;
}
-
- static void dispose(PassOwnPtr<WebVector<WebServiceWorkerRegistration*>> webServiceWorkerRegistrations)
- {
- for (WebServiceWorkerRegistration* registration : *webServiceWorkerRegistrations)
- ServiceWorkerRegistration::dispose(registration);
- }
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698