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/fetch/GlobalFetch.h" | 5 #include "modules/fetch/GlobalFetch.h" |
6 | 6 |
7 #include "core/frame/LocalDOMWindow.h" | 7 #include "core/frame/LocalDOMWindow.h" |
8 #include "core/frame/UseCounter.h" | 8 #include "core/frame/UseCounter.h" |
9 #include "core/inspector/InspectorInstrumentation.h" | 9 #include "core/inspector/InspectorInstrumentation.h" |
10 #include "core/workers/WorkerGlobalScope.h" | 10 #include "core/workers/WorkerGlobalScope.h" |
11 #include "modules/fetch/FetchManager.h" | 11 #include "modules/fetch/FetchManager.h" |
12 #include "modules/fetch/Request.h" | 12 #include "modules/fetch/Request.h" |
13 #include "modules/fetch/Response.h" | |
13 #include "platform/Supplementable.h" | 14 #include "platform/Supplementable.h" |
14 #include "platform/heap/Handle.h" | 15 #include "platform/heap/Handle.h" |
15 | 16 |
16 namespace blink { | 17 namespace blink { |
17 | 18 |
18 namespace { | 19 namespace { |
19 | 20 |
20 template <typename T> | 21 template <typename T> |
21 class GlobalFetchImpl final | 22 class GlobalFetchImpl final |
22 : public GarbageCollectedFinalized<GlobalFetchImpl<T>>, | 23 : public GarbageCollectedFinalized<GlobalFetchImpl<T>>, |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
89 worker.getExecutionContext()); | 90 worker.getExecutionContext()); |
90 } | 91 } |
91 | 92 |
92 DEFINE_TRACE(GlobalFetch::ScopedFetcher) {} | 93 DEFINE_TRACE(GlobalFetch::ScopedFetcher) {} |
93 | 94 |
94 ScriptPromise GlobalFetch::fetch(ScriptState* scriptState, | 95 ScriptPromise GlobalFetch::fetch(ScriptState* scriptState, |
95 LocalDOMWindow& window, | 96 LocalDOMWindow& window, |
96 const RequestInfo& input, | 97 const RequestInfo& input, |
97 const Dictionary& init, | 98 const Dictionary& init, |
98 ExceptionState& exceptionState) { | 99 ExceptionState& exceptionState) { |
100 scriptState->isolate()->SetWasmCompileCallback( | |
Mircea Trofin
2017/03/28 02:05:57
This is the problem: we need to set this callback
| |
101 WasmResponseOverloads::CompileOverload); | |
99 UseCounter::count(window.getExecutionContext(), UseCounter::Fetch); | 102 UseCounter::count(window.getExecutionContext(), UseCounter::Fetch); |
100 if (!window.frame()) { | 103 if (!window.frame()) { |
101 exceptionState.throwTypeError("The global scope is shutting down."); | 104 exceptionState.throwTypeError("The global scope is shutting down."); |
102 return ScriptPromise(); | 105 return ScriptPromise(); |
103 } | 106 } |
104 return ScopedFetcher::from(window)->fetch(scriptState, input, init, | 107 return ScopedFetcher::from(window)->fetch(scriptState, input, init, |
105 exceptionState); | 108 exceptionState); |
106 } | 109 } |
107 | 110 |
108 ScriptPromise GlobalFetch::fetch(ScriptState* scriptState, | 111 ScriptPromise GlobalFetch::fetch(ScriptState* scriptState, |
109 WorkerGlobalScope& worker, | 112 WorkerGlobalScope& worker, |
110 const RequestInfo& input, | 113 const RequestInfo& input, |
111 const Dictionary& init, | 114 const Dictionary& init, |
112 ExceptionState& exceptionState) { | 115 ExceptionState& exceptionState) { |
113 // Note that UseCounter doesn't work with SharedWorker or ServiceWorker. | 116 // Note that UseCounter doesn't work with SharedWorker or ServiceWorker. |
114 UseCounter::count(worker.getExecutionContext(), UseCounter::Fetch); | 117 UseCounter::count(worker.getExecutionContext(), UseCounter::Fetch); |
115 return ScopedFetcher::from(worker)->fetch(scriptState, input, init, | 118 return ScopedFetcher::from(worker)->fetch(scriptState, input, init, |
116 exceptionState); | 119 exceptionState); |
117 } | 120 } |
118 | 121 |
119 } // namespace blink | 122 } // namespace blink |
OLD | NEW |