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 #ifndef PushManager_h | 5 #ifndef PushManager_h |
6 #define PushManager_h | 6 #define PushManager_h |
7 | 7 |
8 #include "bindings/core/v8/ScriptWrappable.h" | 8 #include "bindings/core/v8/ScriptWrappable.h" |
9 #include "platform/heap/Handle.h" | 9 #include "platform/heap/Handle.h" |
10 | 10 |
11 namespace blink { | 11 namespace blink { |
12 | 12 |
13 class ScriptPromise; | 13 class ScriptPromise; |
14 class ScriptState; | 14 class ScriptState; |
| 15 class ServiceWorkerRegistration; |
15 | 16 |
16 class PushManager final : public GarbageCollected<PushManager>, public ScriptWra
ppable { | 17 class PushManager final : public GarbageCollected<PushManager>, public ScriptWra
ppable { |
17 DEFINE_WRAPPERTYPEINFO(); | 18 DEFINE_WRAPPERTYPEINFO(); |
18 public: | 19 public: |
19 static PushManager* create() | 20 static PushManager* create(ServiceWorkerRegistration* registration) |
20 { | 21 { |
21 return new PushManager(); | 22 return new PushManager(registration); |
22 } | 23 } |
23 | 24 |
24 ScriptPromise registerPushMessaging(ScriptState*); | 25 ScriptPromise registerPushMessaging(ScriptState*); |
25 ScriptPromise hasPermission(ScriptState*); | 26 ScriptPromise hasPermission(ScriptState*); |
26 | 27 |
27 void trace(Visitor*) { } | 28 void trace(Visitor*); |
28 | 29 |
29 private: | 30 private: |
30 PushManager(); | 31 explicit PushManager(ServiceWorkerRegistration*); |
| 32 |
| 33 Member<ServiceWorkerRegistration> m_registration; |
31 }; | 34 }; |
32 | 35 |
33 } // namespace blink | 36 } // namespace blink |
34 | 37 |
35 #endif // PushManager_h | 38 #endif // PushManager_h |
OLD | NEW |