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

Unified Diff: Source/modules/serviceworkers/ServiceWorkerContainer.cpp

Issue 1312343004: [ServiceWorker] Use appopriate type parameters for WebCallbacks (1/3) (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: 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
« no previous file with comments | « no previous file | Source/modules/serviceworkers/ServiceWorkerRegistration.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/modules/serviceworkers/ServiceWorkerContainer.cpp
diff --git a/Source/modules/serviceworkers/ServiceWorkerContainer.cpp b/Source/modules/serviceworkers/ServiceWorkerContainer.cpp
index fd56d84d22a656f9136c466411d523bb8e6d2e3d..794180db893fe958a83d4240f26ac3bcac7c0d1f 100644
--- a/Source/modules/serviceworkers/ServiceWorkerContainer.cpp
+++ b/Source/modules/serviceworkers/ServiceWorkerContainer.cpp
@@ -64,22 +64,18 @@ public:
: m_resolver(resolver) { }
~RegistrationCallback() override { }
- // Takes ownership of |registrationRaw|.
- void onSuccess(WebServiceWorkerRegistration* registrationRaw) override
+ void onSuccess(WebPassOwnPtr<WebServiceWorkerRegistration> registration) override
{
- OwnPtr<WebServiceWorkerRegistration> registration = adoptPtr(registrationRaw);
if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped())
return;
m_resolver->resolve(ServiceWorkerRegistration::create(m_resolver->executionContext(), registration.release()));
}
- // Takes ownership of |errorRaw|.
- void onError(WebServiceWorkerError* errorRaw) override
+ void onError(const WebServiceWorkerError& error) override
{
- OwnPtr<WebServiceWorkerError> error = adoptPtr(errorRaw);
if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped())
return;
- m_resolver->reject(ServiceWorkerError::take(m_resolver.get(), *error));
+ m_resolver->reject(ServiceWorkerError::take(m_resolver.get(), error));
}
private:
@@ -93,10 +89,9 @@ public:
: m_resolver(resolver) { }
~GetRegistrationCallback() override { }
- // Takes ownership of |registrationRaw|.
- void onSuccess(WebServiceWorkerRegistration* registrationRaw) override
+ void onSuccess(WebPassOwnPtr<WebServiceWorkerRegistration> r) override
{
- OwnPtr<WebServiceWorkerRegistration> registration = adoptPtr(registrationRaw);
+ OwnPtr<WebServiceWorkerRegistration> registration = r.release();
if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped())
return;
if (!registration) {
@@ -107,13 +102,11 @@ public:
m_resolver->resolve(ServiceWorkerRegistration::create(m_resolver->executionContext(), registration.release()));
}
- // Takes ownership of |errorRaw|.
- void onError(WebServiceWorkerError* errorRaw) override
+ void onError(const WebServiceWorkerError& error) override
{
- OwnPtr<WebServiceWorkerError> error = adoptPtr(errorRaw);
if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped())
return;
- m_resolver->reject(ServiceWorkerError::take(m_resolver.get(), *error));
+ m_resolver->reject(ServiceWorkerError::take(m_resolver.get(), error));
}
private:
@@ -127,22 +120,24 @@ public:
: m_resolver(resolver) { }
~GetRegistrationsCallback() override { }
- // Takes ownership of |registrationsRaw|.
- void onSuccess(WebVector<WebServiceWorkerRegistration*>* registrationsRaw) override
+ void onSuccess(WebPassOwnPtr<WebVector<WebServiceWorkerRegistration*>> webPassRegistrations) override
{
- OwnPtr<WebVector<WebServiceWorkerRegistration*>> registrations = adoptPtr(registrationsRaw);
+ Vector<OwnPtr<WebServiceWorkerRegistration>> registrations;
+ OwnPtr<WebVector<WebServiceWorkerRegistration*>> webRegistrations = webPassRegistrations.release();
+ for (auto& registration : *webRegistrations) {
+ registrations.append(adoptPtr(registration));
+ }
+
if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped())
return;
- m_resolver->resolve(ServiceWorkerRegistrationArray::take(m_resolver.get(), registrations.release()));
+ m_resolver->resolve(ServiceWorkerRegistrationArray::take(m_resolver.get(), &registrations));
}
- // Takes ownership of |errorRaw|.
- void onError(WebServiceWorkerError* errorRaw) override
+ void onError(const WebServiceWorkerError& error) override
{
- OwnPtr<WebServiceWorkerError> error = adoptPtr(errorRaw);
if (!m_resolver->executionContext() || m_resolver->executionContext()->activeDOMObjectsAreStopped())
return;
- m_resolver->reject(ServiceWorkerError::take(m_resolver.get(), *error));
+ m_resolver->reject(ServiceWorkerError::take(m_resolver.get(), error));
}
private:
@@ -154,15 +149,12 @@ class ServiceWorkerContainer::GetRegistrationForReadyCallback : public WebServic
public:
explicit GetRegistrationForReadyCallback(ReadyProperty* ready)
: m_ready(ready) { }
- ~GetRegistrationForReadyCallback() { }
+ ~GetRegistrationForReadyCallback() override { }
- // Takes ownership of |registrationRaw|.
- void onSuccess(WebServiceWorkerRegistration* registrationRaw) override
+ void onSuccess(WebPassOwnPtr<WebServiceWorkerRegistration> registration) override
{
- ASSERT(registrationRaw);
ASSERT(m_ready->state() == ReadyProperty::Pending);
- OwnPtr<WebServiceWorkerRegistration> registration = adoptPtr(registrationRaw);
if (m_ready->executionContext() && !m_ready->executionContext()->activeDOMObjectsAreStopped())
m_ready->resolve(ServiceWorkerRegistration::create(m_ready->executionContext(), registration.release()));
}
« no previous file with comments | « no previous file | Source/modules/serviceworkers/ServiceWorkerRegistration.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698