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 "config.h" | 5 #include "config.h" |
6 #include "FetchEvent.h" | 6 #include "FetchEvent.h" |
7 | 7 |
8 #include "modules/fetch/Request.h" | 8 #include "modules/fetch/Request.h" |
9 #include "modules/serviceworkers/ServiceWorkerGlobalScope.h" | 9 #include "modules/serviceworkers/ServiceWorkerGlobalScope.h" |
10 #include "wtf/RefPtr.h" | 10 #include "wtf/RefPtr.h" |
11 | 11 |
12 namespace blink { | 12 namespace blink { |
13 | 13 |
14 PassRefPtrWillBeRawPtr<FetchEvent> FetchEvent::create() | 14 PassRefPtrWillBeRawPtr<FetchEvent> FetchEvent::create() |
15 { | 15 { |
16 return adoptRefWillBeNoop(new FetchEvent()); | 16 return adoptRefWillBeNoop(new FetchEvent()); |
17 } | 17 } |
18 | 18 |
19 PassRefPtrWillBeRawPtr<FetchEvent> FetchEvent::create(RespondWithObserver* obser
ver, Request* request) | 19 PassRefPtrWillBeRawPtr<FetchEvent> FetchEvent::create(const AtomicString& type,
FetchEventInit& initializer) |
20 { | 20 { |
21 return adoptRefWillBeNoop(new FetchEvent(observer, request)); | 21 initializer.setCancelable(true); |
| 22 return adoptRefWillBeNoop(new FetchEvent(type, initializer, nullptr)); |
| 23 } |
| 24 |
| 25 PassRefPtrWillBeRawPtr<FetchEvent> FetchEvent::create(const AtomicString& type,
FetchEventInit& initializer, RespondWithObserver* observer) |
| 26 { |
| 27 initializer.setCancelable(true); |
| 28 return adoptRefWillBeNoop(new FetchEvent(type, initializer, observer)); |
22 } | 29 } |
23 | 30 |
24 Request* FetchEvent::request() const | 31 Request* FetchEvent::request() const |
25 { | 32 { |
26 return m_request; | 33 return m_request; |
27 } | 34 } |
28 | 35 |
29 bool FetchEvent::isReload() const | 36 bool FetchEvent::isReload() const |
30 { | 37 { |
31 return m_isReload; | 38 return m_isReload; |
32 } | 39 } |
33 | 40 |
34 void FetchEvent::respondWith(ScriptState* scriptState, const ScriptValue& value,
ExceptionState& exceptionState) | 41 void FetchEvent::respondWith(ScriptState* scriptState, const ScriptValue& value,
ExceptionState& exceptionState) |
35 { | 42 { |
36 stopImmediatePropagation(); | 43 stopImmediatePropagation(); |
37 m_observer->respondWith(scriptState, value, exceptionState); | 44 m_observer->respondWith(scriptState, value, exceptionState); |
38 } | 45 } |
39 | 46 |
40 const AtomicString& FetchEvent::interfaceName() const | 47 const AtomicString& FetchEvent::interfaceName() const |
41 { | 48 { |
42 return EventNames::FetchEvent; | 49 return EventNames::FetchEvent; |
43 } | 50 } |
44 | 51 |
45 void FetchEvent::setIsReload(bool isReload) | |
46 { | |
47 m_isReload = isReload; | |
48 } | |
49 | |
50 FetchEvent::FetchEvent() | 52 FetchEvent::FetchEvent() |
51 : m_isReload(false) | 53 : m_isReload(false) |
52 { | 54 { |
53 } | 55 } |
54 | 56 |
55 FetchEvent::FetchEvent(RespondWithObserver* observer, Request* request) | 57 FetchEvent::FetchEvent(const AtomicString& type, const FetchEventInit& initializ
er, RespondWithObserver* observer) |
56 : Event(EventTypeNames::fetch, /*canBubble=*/false, /*cancelable=*/true) | 58 : ExtendableEvent(type, initializer) |
57 , m_observer(observer) | 59 , m_observer(observer) |
58 , m_request(request) | |
59 , m_isReload(false) | |
60 { | 60 { |
| 61 if (initializer.hasRequest()) |
| 62 m_request = initializer.request(); |
| 63 m_isReload = initializer.isReload(); |
61 } | 64 } |
62 | 65 |
63 DEFINE_TRACE(FetchEvent) | 66 DEFINE_TRACE(FetchEvent) |
64 { | 67 { |
65 visitor->trace(m_request); | 68 visitor->trace(m_request); |
66 visitor->trace(m_observer); | 69 visitor->trace(m_observer); |
67 Event::trace(visitor); | 70 Event::trace(visitor); |
68 } | 71 } |
69 | 72 |
70 } // namespace blink | 73 } // namespace blink |
OLD | NEW |