OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "modules/push_messaging/PushSubscriptionCallbacks.h" | 5 #include "modules/push_messaging/PushSubscriptionCallbacks.h" |
6 | 6 |
7 #include "bindings/core/v8/ScriptPromiseResolver.h" | 7 #include "bindings/core/v8/ScriptPromiseResolver.h" |
8 #include "modules/push_messaging/PushError.h" | 8 #include "modules/push_messaging/PushError.h" |
9 #include "modules/push_messaging/PushSubscription.h" | 9 #include "modules/push_messaging/PushSubscription.h" |
10 #include "modules/serviceworkers/ServiceWorkerRegistration.h" | 10 #include "modules/serviceworkers/ServiceWorkerRegistration.h" |
11 #include "public/platform/modules/push_messaging/WebPushSubscription.h" | 11 #include "public/platform/modules/push_messaging/WebPushSubscription.h" |
12 #include "wtf/Assertions.h" | 12 #include "wtf/Assertions.h" |
13 #include "wtf/PtrUtil.h" | |
14 | 13 |
15 namespace blink { | 14 namespace blink { |
16 | 15 |
17 PushSubscriptionCallbacks::PushSubscriptionCallbacks(ScriptPromiseResolver* reso
lver, ServiceWorkerRegistration* serviceWorkerRegistration) | 16 PushSubscriptionCallbacks::PushSubscriptionCallbacks(ScriptPromiseResolver* reso
lver, ServiceWorkerRegistration* serviceWorkerRegistration) |
18 : m_resolver(resolver) | 17 : m_resolver(resolver) |
19 , m_serviceWorkerRegistration(serviceWorkerRegistration) | 18 , m_serviceWorkerRegistration(serviceWorkerRegistration) |
20 { | 19 { |
21 DCHECK(m_resolver); | 20 DCHECK(m_resolver); |
22 DCHECK(m_serviceWorkerRegistration); | 21 DCHECK(m_serviceWorkerRegistration); |
23 } | 22 } |
24 | 23 |
25 PushSubscriptionCallbacks::~PushSubscriptionCallbacks() | 24 PushSubscriptionCallbacks::~PushSubscriptionCallbacks() |
26 { | 25 { |
27 } | 26 } |
28 | 27 |
29 void PushSubscriptionCallbacks::onSuccess(std::unique_ptr<WebPushSubscription> w
ebPushSubscription) | 28 void PushSubscriptionCallbacks::onSuccess(std::unique_ptr<WebPushSubscription> w
ebPushSubscription) |
30 { | 29 { |
31 if (!m_resolver->getExecutionContext() || m_resolver->getExecutionContext()-
>activeDOMObjectsAreStopped()) | 30 if (!m_resolver->getExecutionContext() || m_resolver->getExecutionContext()-
>activeDOMObjectsAreStopped()) |
32 return; | 31 return; |
33 | 32 |
34 m_resolver->resolve(PushSubscription::take(m_resolver.get(), wrapUnique(webP
ushSubscription.release()), m_serviceWorkerRegistration)); | 33 m_resolver->resolve(PushSubscription::take(m_resolver.get(), adoptPtr(webPus
hSubscription.release()), m_serviceWorkerRegistration)); |
35 } | 34 } |
36 | 35 |
37 void PushSubscriptionCallbacks::onError(const WebPushError& error) | 36 void PushSubscriptionCallbacks::onError(const WebPushError& error) |
38 { | 37 { |
39 if (!m_resolver->getExecutionContext() || m_resolver->getExecutionContext()-
>activeDOMObjectsAreStopped()) | 38 if (!m_resolver->getExecutionContext() || m_resolver->getExecutionContext()-
>activeDOMObjectsAreStopped()) |
40 return; | 39 return; |
41 m_resolver->reject(PushError::take(m_resolver.get(), error)); | 40 m_resolver->reject(PushError::take(m_resolver.get(), error)); |
42 } | 41 } |
43 | 42 |
44 } // namespace blink | 43 } // namespace blink |
OLD | NEW |