1/*
2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * Copyright (C) 2013-2016 Apple Inc. All rights reserved.
4 * Copyright (C) 2014 University of Washington. All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 *
15 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
16 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
17 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
19 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
25 * THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28// DO NOT EDIT THIS FILE. It is automatically generated from CombinedDomains.json
29// by the script: Source/JavaScriptCore/inspector/scripts/generate-inspector-protocol-bindings.py
30
31#include "config.h"
32#include "InspectorFrontendDispatchers.h"
33
34#include "InspectorFrontendRouter.h"
35#include <wtf/text/CString.h>
36
37namespace Inspector {
38
39void ApplicationCacheFrontendDispatcher::applicationCacheStatusUpdated(const String& frameId, const String& manifestURL, int status)
40{
41 Ref<JSON::Object> jsonMessage = JSON::Object::create();
42 jsonMessage->setString("method"_s, "ApplicationCache.applicationCacheStatusUpdated"_s);
43 Ref<JSON::Object> paramsObject = JSON::Object::create();
44 paramsObject->setString("frameId"_s, frameId);
45 paramsObject->setString("manifestURL"_s, manifestURL);
46 paramsObject->setInteger("status"_s, status);
47 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
48
49 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
50}
51
52void ApplicationCacheFrontendDispatcher::networkStateUpdated(bool isNowOnline)
53{
54 Ref<JSON::Object> jsonMessage = JSON::Object::create();
55 jsonMessage->setString("method"_s, "ApplicationCache.networkStateUpdated"_s);
56 Ref<JSON::Object> paramsObject = JSON::Object::create();
57 paramsObject->setBoolean("isNowOnline"_s, isNowOnline);
58 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
59
60 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
61}
62
63void CSSFrontendDispatcher::mediaQueryResultChanged()
64{
65 Ref<JSON::Object> jsonMessage = JSON::Object::create();
66 jsonMessage->setString("method"_s, "CSS.mediaQueryResultChanged"_s);
67
68 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
69}
70
71void CSSFrontendDispatcher::styleSheetChanged(const String& styleSheetId)
72{
73 Ref<JSON::Object> jsonMessage = JSON::Object::create();
74 jsonMessage->setString("method"_s, "CSS.styleSheetChanged"_s);
75 Ref<JSON::Object> paramsObject = JSON::Object::create();
76 paramsObject->setString("styleSheetId"_s, styleSheetId);
77 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
78
79 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
80}
81
82void CSSFrontendDispatcher::styleSheetAdded(RefPtr<Inspector::Protocol::CSS::CSSStyleSheetHeader> header)
83{
84 Ref<JSON::Object> jsonMessage = JSON::Object::create();
85 jsonMessage->setString("method"_s, "CSS.styleSheetAdded"_s);
86 Ref<JSON::Object> paramsObject = JSON::Object::create();
87 paramsObject->setObject("header"_s, header);
88 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
89
90 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
91}
92
93void CSSFrontendDispatcher::styleSheetRemoved(const String& styleSheetId)
94{
95 Ref<JSON::Object> jsonMessage = JSON::Object::create();
96 jsonMessage->setString("method"_s, "CSS.styleSheetRemoved"_s);
97 Ref<JSON::Object> paramsObject = JSON::Object::create();
98 paramsObject->setString("styleSheetId"_s, styleSheetId);
99 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
100
101 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
102}
103
104void CanvasFrontendDispatcher::canvasAdded(RefPtr<Inspector::Protocol::Canvas::Canvas> canvas)
105{
106 Ref<JSON::Object> jsonMessage = JSON::Object::create();
107 jsonMessage->setString("method"_s, "Canvas.canvasAdded"_s);
108 Ref<JSON::Object> paramsObject = JSON::Object::create();
109 paramsObject->setObject("canvas"_s, canvas);
110 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
111
112 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
113}
114
115void CanvasFrontendDispatcher::canvasRemoved(const String& canvasId)
116{
117 Ref<JSON::Object> jsonMessage = JSON::Object::create();
118 jsonMessage->setString("method"_s, "Canvas.canvasRemoved"_s);
119 Ref<JSON::Object> paramsObject = JSON::Object::create();
120 paramsObject->setString("canvasId"_s, canvasId);
121 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
122
123 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
124}
125
126void CanvasFrontendDispatcher::canvasMemoryChanged(const String& canvasId, double memoryCost)
127{
128 Ref<JSON::Object> jsonMessage = JSON::Object::create();
129 jsonMessage->setString("method"_s, "Canvas.canvasMemoryChanged"_s);
130 Ref<JSON::Object> paramsObject = JSON::Object::create();
131 paramsObject->setString("canvasId"_s, canvasId);
132 paramsObject->setDouble("memoryCost"_s, memoryCost);
133 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
134
135 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
136}
137
138void CanvasFrontendDispatcher::extensionEnabled(const String& canvasId, const String& extension)
139{
140 Ref<JSON::Object> jsonMessage = JSON::Object::create();
141 jsonMessage->setString("method"_s, "Canvas.extensionEnabled"_s);
142 Ref<JSON::Object> paramsObject = JSON::Object::create();
143 paramsObject->setString("canvasId"_s, canvasId);
144 paramsObject->setString("extension"_s, extension);
145 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
146
147 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
148}
149
150void CanvasFrontendDispatcher::cssCanvasClientNodesChanged(const String& canvasId)
151{
152 Ref<JSON::Object> jsonMessage = JSON::Object::create();
153 jsonMessage->setString("method"_s, "Canvas.cssCanvasClientNodesChanged"_s);
154 Ref<JSON::Object> paramsObject = JSON::Object::create();
155 paramsObject->setString("canvasId"_s, canvasId);
156 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
157
158 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
159}
160
161void CanvasFrontendDispatcher::recordingStarted(const String& canvasId, Inspector::Protocol::Recording::Initiator initiator)
162{
163 Ref<JSON::Object> jsonMessage = JSON::Object::create();
164 jsonMessage->setString("method"_s, "Canvas.recordingStarted"_s);
165 Ref<JSON::Object> paramsObject = JSON::Object::create();
166 paramsObject->setString("canvasId"_s, canvasId);
167 paramsObject->setString("initiator"_s, Inspector::Protocol::InspectorHelpers::getEnumConstantValue(initiator));
168 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
169
170 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
171}
172
173void CanvasFrontendDispatcher::recordingProgress(const String& canvasId, RefPtr<JSON::ArrayOf<Inspector::Protocol::Recording::Frame>> frames, int bufferUsed)
174{
175 Ref<JSON::Object> jsonMessage = JSON::Object::create();
176 jsonMessage->setString("method"_s, "Canvas.recordingProgress"_s);
177 Ref<JSON::Object> paramsObject = JSON::Object::create();
178 paramsObject->setString("canvasId"_s, canvasId);
179 paramsObject->setArray("frames"_s, frames);
180 paramsObject->setInteger("bufferUsed"_s, bufferUsed);
181 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
182
183 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
184}
185
186void CanvasFrontendDispatcher::recordingFinished(const String& canvasId, RefPtr<Inspector::Protocol::Recording::Recording> recording)
187{
188 Ref<JSON::Object> jsonMessage = JSON::Object::create();
189 jsonMessage->setString("method"_s, "Canvas.recordingFinished"_s);
190 Ref<JSON::Object> paramsObject = JSON::Object::create();
191 paramsObject->setString("canvasId"_s, canvasId);
192 if (recording)
193 paramsObject->setObject("recording"_s, recording);
194 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
195
196 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
197}
198
199void CanvasFrontendDispatcher::programCreated(const String& canvasId, const String& programId)
200{
201 Ref<JSON::Object> jsonMessage = JSON::Object::create();
202 jsonMessage->setString("method"_s, "Canvas.programCreated"_s);
203 Ref<JSON::Object> paramsObject = JSON::Object::create();
204 paramsObject->setString("canvasId"_s, canvasId);
205 paramsObject->setString("programId"_s, programId);
206 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
207
208 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
209}
210
211void CanvasFrontendDispatcher::programDeleted(const String& programId)
212{
213 Ref<JSON::Object> jsonMessage = JSON::Object::create();
214 jsonMessage->setString("method"_s, "Canvas.programDeleted"_s);
215 Ref<JSON::Object> paramsObject = JSON::Object::create();
216 paramsObject->setString("programId"_s, programId);
217 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
218
219 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
220}
221
222void ConsoleFrontendDispatcher::messageAdded(RefPtr<Inspector::Protocol::Console::ConsoleMessage> message)
223{
224 Ref<JSON::Object> jsonMessage = JSON::Object::create();
225 jsonMessage->setString("method"_s, "Console.messageAdded"_s);
226 Ref<JSON::Object> paramsObject = JSON::Object::create();
227 paramsObject->setObject("message"_s, message);
228 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
229
230 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
231}
232
233void ConsoleFrontendDispatcher::messageRepeatCountUpdated(int count)
234{
235 Ref<JSON::Object> jsonMessage = JSON::Object::create();
236 jsonMessage->setString("method"_s, "Console.messageRepeatCountUpdated"_s);
237 Ref<JSON::Object> paramsObject = JSON::Object::create();
238 paramsObject->setInteger("count"_s, count);
239 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
240
241 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
242}
243
244void ConsoleFrontendDispatcher::messagesCleared()
245{
246 Ref<JSON::Object> jsonMessage = JSON::Object::create();
247 jsonMessage->setString("method"_s, "Console.messagesCleared"_s);
248
249 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
250}
251
252void ConsoleFrontendDispatcher::heapSnapshot(double timestamp, const String& snapshotData, const String* title)
253{
254 Ref<JSON::Object> jsonMessage = JSON::Object::create();
255 jsonMessage->setString("method"_s, "Console.heapSnapshot"_s);
256 Ref<JSON::Object> paramsObject = JSON::Object::create();
257 paramsObject->setDouble("timestamp"_s, timestamp);
258 paramsObject->setString("snapshotData"_s, snapshotData);
259 if (title)
260 paramsObject->setString("title"_s, *title);
261 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
262
263 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
264}
265
266void DOMFrontendDispatcher::documentUpdated()
267{
268 Ref<JSON::Object> jsonMessage = JSON::Object::create();
269 jsonMessage->setString("method"_s, "DOM.documentUpdated"_s);
270
271 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
272}
273
274void DOMFrontendDispatcher::inspect(int nodeId)
275{
276 Ref<JSON::Object> jsonMessage = JSON::Object::create();
277 jsonMessage->setString("method"_s, "DOM.inspect"_s);
278 Ref<JSON::Object> paramsObject = JSON::Object::create();
279 paramsObject->setInteger("nodeId"_s, nodeId);
280 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
281
282 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
283}
284
285void DOMFrontendDispatcher::setChildNodes(int parentId, RefPtr<JSON::ArrayOf<Inspector::Protocol::DOM::Node>> nodes)
286{
287 Ref<JSON::Object> jsonMessage = JSON::Object::create();
288 jsonMessage->setString("method"_s, "DOM.setChildNodes"_s);
289 Ref<JSON::Object> paramsObject = JSON::Object::create();
290 paramsObject->setInteger("parentId"_s, parentId);
291 paramsObject->setArray("nodes"_s, nodes);
292 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
293
294 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
295}
296
297void DOMFrontendDispatcher::attributeModified(int nodeId, const String& name, const String& value)
298{
299 Ref<JSON::Object> jsonMessage = JSON::Object::create();
300 jsonMessage->setString("method"_s, "DOM.attributeModified"_s);
301 Ref<JSON::Object> paramsObject = JSON::Object::create();
302 paramsObject->setInteger("nodeId"_s, nodeId);
303 paramsObject->setString("name"_s, name);
304 paramsObject->setString("value"_s, value);
305 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
306
307 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
308}
309
310void DOMFrontendDispatcher::attributeRemoved(int nodeId, const String& name)
311{
312 Ref<JSON::Object> jsonMessage = JSON::Object::create();
313 jsonMessage->setString("method"_s, "DOM.attributeRemoved"_s);
314 Ref<JSON::Object> paramsObject = JSON::Object::create();
315 paramsObject->setInteger("nodeId"_s, nodeId);
316 paramsObject->setString("name"_s, name);
317 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
318
319 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
320}
321
322void DOMFrontendDispatcher::inlineStyleInvalidated(RefPtr<JSON::ArrayOf<int>> nodeIds)
323{
324 Ref<JSON::Object> jsonMessage = JSON::Object::create();
325 jsonMessage->setString("method"_s, "DOM.inlineStyleInvalidated"_s);
326 Ref<JSON::Object> paramsObject = JSON::Object::create();
327 paramsObject->setArray("nodeIds"_s, nodeIds);
328 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
329
330 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
331}
332
333void DOMFrontendDispatcher::characterDataModified(int nodeId, const String& characterData)
334{
335 Ref<JSON::Object> jsonMessage = JSON::Object::create();
336 jsonMessage->setString("method"_s, "DOM.characterDataModified"_s);
337 Ref<JSON::Object> paramsObject = JSON::Object::create();
338 paramsObject->setInteger("nodeId"_s, nodeId);
339 paramsObject->setString("characterData"_s, characterData);
340 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
341
342 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
343}
344
345void DOMFrontendDispatcher::childNodeCountUpdated(int nodeId, int childNodeCount)
346{
347 Ref<JSON::Object> jsonMessage = JSON::Object::create();
348 jsonMessage->setString("method"_s, "DOM.childNodeCountUpdated"_s);
349 Ref<JSON::Object> paramsObject = JSON::Object::create();
350 paramsObject->setInteger("nodeId"_s, nodeId);
351 paramsObject->setInteger("childNodeCount"_s, childNodeCount);
352 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
353
354 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
355}
356
357void DOMFrontendDispatcher::childNodeInserted(int parentNodeId, int previousNodeId, RefPtr<Inspector::Protocol::DOM::Node> node)
358{
359 Ref<JSON::Object> jsonMessage = JSON::Object::create();
360 jsonMessage->setString("method"_s, "DOM.childNodeInserted"_s);
361 Ref<JSON::Object> paramsObject = JSON::Object::create();
362 paramsObject->setInteger("parentNodeId"_s, parentNodeId);
363 paramsObject->setInteger("previousNodeId"_s, previousNodeId);
364 paramsObject->setObject("node"_s, node);
365 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
366
367 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
368}
369
370void DOMFrontendDispatcher::childNodeRemoved(int parentNodeId, int nodeId)
371{
372 Ref<JSON::Object> jsonMessage = JSON::Object::create();
373 jsonMessage->setString("method"_s, "DOM.childNodeRemoved"_s);
374 Ref<JSON::Object> paramsObject = JSON::Object::create();
375 paramsObject->setInteger("parentNodeId"_s, parentNodeId);
376 paramsObject->setInteger("nodeId"_s, nodeId);
377 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
378
379 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
380}
381
382void DOMFrontendDispatcher::shadowRootPushed(int hostId, RefPtr<Inspector::Protocol::DOM::Node> root)
383{
384 Ref<JSON::Object> jsonMessage = JSON::Object::create();
385 jsonMessage->setString("method"_s, "DOM.shadowRootPushed"_s);
386 Ref<JSON::Object> paramsObject = JSON::Object::create();
387 paramsObject->setInteger("hostId"_s, hostId);
388 paramsObject->setObject("root"_s, root);
389 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
390
391 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
392}
393
394void DOMFrontendDispatcher::shadowRootPopped(int hostId, int rootId)
395{
396 Ref<JSON::Object> jsonMessage = JSON::Object::create();
397 jsonMessage->setString("method"_s, "DOM.shadowRootPopped"_s);
398 Ref<JSON::Object> paramsObject = JSON::Object::create();
399 paramsObject->setInteger("hostId"_s, hostId);
400 paramsObject->setInteger("rootId"_s, rootId);
401 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
402
403 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
404}
405
406void DOMFrontendDispatcher::customElementStateChanged(int nodeId, Inspector::Protocol::DOM::CustomElementState customElementState)
407{
408 Ref<JSON::Object> jsonMessage = JSON::Object::create();
409 jsonMessage->setString("method"_s, "DOM.customElementStateChanged"_s);
410 Ref<JSON::Object> paramsObject = JSON::Object::create();
411 paramsObject->setInteger("nodeId"_s, nodeId);
412 paramsObject->setString("customElementState"_s, Inspector::Protocol::InspectorHelpers::getEnumConstantValue(customElementState));
413 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
414
415 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
416}
417
418void DOMFrontendDispatcher::pseudoElementAdded(int parentId, RefPtr<Inspector::Protocol::DOM::Node> pseudoElement)
419{
420 Ref<JSON::Object> jsonMessage = JSON::Object::create();
421 jsonMessage->setString("method"_s, "DOM.pseudoElementAdded"_s);
422 Ref<JSON::Object> paramsObject = JSON::Object::create();
423 paramsObject->setInteger("parentId"_s, parentId);
424 paramsObject->setObject("pseudoElement"_s, pseudoElement);
425 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
426
427 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
428}
429
430void DOMFrontendDispatcher::pseudoElementRemoved(int parentId, int pseudoElementId)
431{
432 Ref<JSON::Object> jsonMessage = JSON::Object::create();
433 jsonMessage->setString("method"_s, "DOM.pseudoElementRemoved"_s);
434 Ref<JSON::Object> paramsObject = JSON::Object::create();
435 paramsObject->setInteger("parentId"_s, parentId);
436 paramsObject->setInteger("pseudoElementId"_s, pseudoElementId);
437 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
438
439 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
440}
441
442void DOMFrontendDispatcher::didAddEventListener(int nodeId)
443{
444 Ref<JSON::Object> jsonMessage = JSON::Object::create();
445 jsonMessage->setString("method"_s, "DOM.didAddEventListener"_s);
446 Ref<JSON::Object> paramsObject = JSON::Object::create();
447 paramsObject->setInteger("nodeId"_s, nodeId);
448 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
449
450 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
451}
452
453void DOMFrontendDispatcher::willRemoveEventListener(int nodeId)
454{
455 Ref<JSON::Object> jsonMessage = JSON::Object::create();
456 jsonMessage->setString("method"_s, "DOM.willRemoveEventListener"_s);
457 Ref<JSON::Object> paramsObject = JSON::Object::create();
458 paramsObject->setInteger("nodeId"_s, nodeId);
459 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
460
461 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
462}
463
464void DOMFrontendDispatcher::didFireEvent(int nodeId, const String& eventName, double timestamp, RefPtr<JSON::Object> data)
465{
466 Ref<JSON::Object> jsonMessage = JSON::Object::create();
467 jsonMessage->setString("method"_s, "DOM.didFireEvent"_s);
468 Ref<JSON::Object> paramsObject = JSON::Object::create();
469 paramsObject->setInteger("nodeId"_s, nodeId);
470 paramsObject->setString("eventName"_s, eventName);
471 paramsObject->setDouble("timestamp"_s, timestamp);
472 if (data)
473 paramsObject->setObject("data"_s, data);
474 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
475
476 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
477}
478
479void DOMFrontendDispatcher::powerEfficientPlaybackStateChanged(int nodeId, double timestamp, bool isPowerEfficient)
480{
481 Ref<JSON::Object> jsonMessage = JSON::Object::create();
482 jsonMessage->setString("method"_s, "DOM.powerEfficientPlaybackStateChanged"_s);
483 Ref<JSON::Object> paramsObject = JSON::Object::create();
484 paramsObject->setInteger("nodeId"_s, nodeId);
485 paramsObject->setDouble("timestamp"_s, timestamp);
486 paramsObject->setBoolean("isPowerEfficient"_s, isPowerEfficient);
487 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
488
489 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
490}
491
492void DOMStorageFrontendDispatcher::domStorageItemsCleared(RefPtr<Inspector::Protocol::DOMStorage::StorageId> storageId)
493{
494 Ref<JSON::Object> jsonMessage = JSON::Object::create();
495 jsonMessage->setString("method"_s, "DOMStorage.domStorageItemsCleared"_s);
496 Ref<JSON::Object> paramsObject = JSON::Object::create();
497 paramsObject->setObject("storageId"_s, storageId);
498 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
499
500 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
501}
502
503void DOMStorageFrontendDispatcher::domStorageItemRemoved(RefPtr<Inspector::Protocol::DOMStorage::StorageId> storageId, const String& key)
504{
505 Ref<JSON::Object> jsonMessage = JSON::Object::create();
506 jsonMessage->setString("method"_s, "DOMStorage.domStorageItemRemoved"_s);
507 Ref<JSON::Object> paramsObject = JSON::Object::create();
508 paramsObject->setObject("storageId"_s, storageId);
509 paramsObject->setString("key"_s, key);
510 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
511
512 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
513}
514
515void DOMStorageFrontendDispatcher::domStorageItemAdded(RefPtr<Inspector::Protocol::DOMStorage::StorageId> storageId, const String& key, const String& newValue)
516{
517 Ref<JSON::Object> jsonMessage = JSON::Object::create();
518 jsonMessage->setString("method"_s, "DOMStorage.domStorageItemAdded"_s);
519 Ref<JSON::Object> paramsObject = JSON::Object::create();
520 paramsObject->setObject("storageId"_s, storageId);
521 paramsObject->setString("key"_s, key);
522 paramsObject->setString("newValue"_s, newValue);
523 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
524
525 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
526}
527
528void DOMStorageFrontendDispatcher::domStorageItemUpdated(RefPtr<Inspector::Protocol::DOMStorage::StorageId> storageId, const String& key, const String& oldValue, const String& newValue)
529{
530 Ref<JSON::Object> jsonMessage = JSON::Object::create();
531 jsonMessage->setString("method"_s, "DOMStorage.domStorageItemUpdated"_s);
532 Ref<JSON::Object> paramsObject = JSON::Object::create();
533 paramsObject->setObject("storageId"_s, storageId);
534 paramsObject->setString("key"_s, key);
535 paramsObject->setString("oldValue"_s, oldValue);
536 paramsObject->setString("newValue"_s, newValue);
537 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
538
539 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
540}
541
542void DatabaseFrontendDispatcher::addDatabase(RefPtr<Inspector::Protocol::Database::Database> database)
543{
544 Ref<JSON::Object> jsonMessage = JSON::Object::create();
545 jsonMessage->setString("method"_s, "Database.addDatabase"_s);
546 Ref<JSON::Object> paramsObject = JSON::Object::create();
547 paramsObject->setObject("database"_s, database);
548 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
549
550 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
551}
552
553void DebuggerFrontendDispatcher::globalObjectCleared()
554{
555 Ref<JSON::Object> jsonMessage = JSON::Object::create();
556 jsonMessage->setString("method"_s, "Debugger.globalObjectCleared"_s);
557
558 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
559}
560
561void DebuggerFrontendDispatcher::scriptParsed(const String& scriptId, const String& url, int startLine, int startColumn, int endLine, int endColumn, const bool* isContentScript, const String* sourceURL, const String* sourceMapURL, const bool* module)
562{
563 Ref<JSON::Object> jsonMessage = JSON::Object::create();
564 jsonMessage->setString("method"_s, "Debugger.scriptParsed"_s);
565 Ref<JSON::Object> paramsObject = JSON::Object::create();
566 paramsObject->setString("scriptId"_s, scriptId);
567 paramsObject->setString("url"_s, url);
568 paramsObject->setInteger("startLine"_s, startLine);
569 paramsObject->setInteger("startColumn"_s, startColumn);
570 paramsObject->setInteger("endLine"_s, endLine);
571 paramsObject->setInteger("endColumn"_s, endColumn);
572 if (isContentScript)
573 paramsObject->setBoolean("isContentScript"_s, *isContentScript);
574 if (sourceURL)
575 paramsObject->setString("sourceURL"_s, *sourceURL);
576 if (sourceMapURL)
577 paramsObject->setString("sourceMapURL"_s, *sourceMapURL);
578 if (module)
579 paramsObject->setBoolean("module"_s, *module);
580 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
581
582 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
583}
584
585void DebuggerFrontendDispatcher::scriptFailedToParse(const String& url, const String& scriptSource, int startLine, int errorLine, const String& errorMessage)
586{
587 Ref<JSON::Object> jsonMessage = JSON::Object::create();
588 jsonMessage->setString("method"_s, "Debugger.scriptFailedToParse"_s);
589 Ref<JSON::Object> paramsObject = JSON::Object::create();
590 paramsObject->setString("url"_s, url);
591 paramsObject->setString("scriptSource"_s, scriptSource);
592 paramsObject->setInteger("startLine"_s, startLine);
593 paramsObject->setInteger("errorLine"_s, errorLine);
594 paramsObject->setString("errorMessage"_s, errorMessage);
595 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
596
597 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
598}
599
600void DebuggerFrontendDispatcher::breakpointResolved(const String& breakpointId, RefPtr<Inspector::Protocol::Debugger::Location> location)
601{
602 Ref<JSON::Object> jsonMessage = JSON::Object::create();
603 jsonMessage->setString("method"_s, "Debugger.breakpointResolved"_s);
604 Ref<JSON::Object> paramsObject = JSON::Object::create();
605 paramsObject->setString("breakpointId"_s, breakpointId);
606 paramsObject->setObject("location"_s, location);
607 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
608
609 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
610}
611
612void DebuggerFrontendDispatcher::paused(RefPtr<JSON::ArrayOf<Inspector::Protocol::Debugger::CallFrame>> callFrames, Reason reason, RefPtr<JSON::Object> data, RefPtr<Inspector::Protocol::Console::StackTrace> asyncStackTrace)
613{
614 Ref<JSON::Object> jsonMessage = JSON::Object::create();
615 jsonMessage->setString("method"_s, "Debugger.paused"_s);
616 Ref<JSON::Object> paramsObject = JSON::Object::create();
617 paramsObject->setArray("callFrames"_s, callFrames);
618 paramsObject->setString("reason"_s, Inspector::Protocol::InspectorHelpers::getEnumConstantValue(reason));
619 if (data)
620 paramsObject->setObject("data"_s, data);
621 if (asyncStackTrace)
622 paramsObject->setObject("asyncStackTrace"_s, asyncStackTrace);
623 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
624
625 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
626}
627
628void DebuggerFrontendDispatcher::resumed()
629{
630 Ref<JSON::Object> jsonMessage = JSON::Object::create();
631 jsonMessage->setString("method"_s, "Debugger.resumed"_s);
632
633 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
634}
635
636void DebuggerFrontendDispatcher::didSampleProbe(RefPtr<Inspector::Protocol::Debugger::ProbeSample> sample)
637{
638 Ref<JSON::Object> jsonMessage = JSON::Object::create();
639 jsonMessage->setString("method"_s, "Debugger.didSampleProbe"_s);
640 Ref<JSON::Object> paramsObject = JSON::Object::create();
641 paramsObject->setObject("sample"_s, sample);
642 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
643
644 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
645}
646
647void DebuggerFrontendDispatcher::playBreakpointActionSound(int breakpointActionId)
648{
649 Ref<JSON::Object> jsonMessage = JSON::Object::create();
650 jsonMessage->setString("method"_s, "Debugger.playBreakpointActionSound"_s);
651 Ref<JSON::Object> paramsObject = JSON::Object::create();
652 paramsObject->setInteger("breakpointActionId"_s, breakpointActionId);
653 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
654
655 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
656}
657
658void HeapFrontendDispatcher::garbageCollected(RefPtr<Inspector::Protocol::Heap::GarbageCollection> collection)
659{
660 Ref<JSON::Object> jsonMessage = JSON::Object::create();
661 jsonMessage->setString("method"_s, "Heap.garbageCollected"_s);
662 Ref<JSON::Object> paramsObject = JSON::Object::create();
663 paramsObject->setObject("collection"_s, collection);
664 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
665
666 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
667}
668
669void HeapFrontendDispatcher::trackingStart(double timestamp, const String& snapshotData)
670{
671 Ref<JSON::Object> jsonMessage = JSON::Object::create();
672 jsonMessage->setString("method"_s, "Heap.trackingStart"_s);
673 Ref<JSON::Object> paramsObject = JSON::Object::create();
674 paramsObject->setDouble("timestamp"_s, timestamp);
675 paramsObject->setString("snapshotData"_s, snapshotData);
676 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
677
678 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
679}
680
681void HeapFrontendDispatcher::trackingComplete(double timestamp, const String& snapshotData)
682{
683 Ref<JSON::Object> jsonMessage = JSON::Object::create();
684 jsonMessage->setString("method"_s, "Heap.trackingComplete"_s);
685 Ref<JSON::Object> paramsObject = JSON::Object::create();
686 paramsObject->setDouble("timestamp"_s, timestamp);
687 paramsObject->setString("snapshotData"_s, snapshotData);
688 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
689
690 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
691}
692
693void InspectorFrontendDispatcher::evaluateForTestInFrontend(const String& script)
694{
695 Ref<JSON::Object> jsonMessage = JSON::Object::create();
696 jsonMessage->setString("method"_s, "Inspector.evaluateForTestInFrontend"_s);
697 Ref<JSON::Object> paramsObject = JSON::Object::create();
698 paramsObject->setString("script"_s, script);
699 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
700
701 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
702}
703
704void InspectorFrontendDispatcher::inspect(RefPtr<Inspector::Protocol::Runtime::RemoteObject> object, RefPtr<JSON::Object> hints)
705{
706 Ref<JSON::Object> jsonMessage = JSON::Object::create();
707 jsonMessage->setString("method"_s, "Inspector.inspect"_s);
708 Ref<JSON::Object> paramsObject = JSON::Object::create();
709 paramsObject->setObject("object"_s, object);
710 paramsObject->setObject("hints"_s, hints);
711 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
712
713 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
714}
715
716void InspectorFrontendDispatcher::activateExtraDomains(RefPtr<JSON::ArrayOf<String>> domains)
717{
718 Ref<JSON::Object> jsonMessage = JSON::Object::create();
719 jsonMessage->setString("method"_s, "Inspector.activateExtraDomains"_s);
720 Ref<JSON::Object> paramsObject = JSON::Object::create();
721 paramsObject->setArray("domains"_s, domains);
722 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
723
724 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
725}
726
727void LayerTreeFrontendDispatcher::layerTreeDidChange()
728{
729 Ref<JSON::Object> jsonMessage = JSON::Object::create();
730 jsonMessage->setString("method"_s, "LayerTree.layerTreeDidChange"_s);
731
732 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
733}
734
735void NetworkFrontendDispatcher::requestWillBeSent(const String& requestId, const String& frameId, const String& loaderId, const String& documentURL, RefPtr<Inspector::Protocol::Network::Request> request, double timestamp, double walltime, RefPtr<Inspector::Protocol::Network::Initiator> initiator, RefPtr<Inspector::Protocol::Network::Response> redirectResponse, Inspector::Protocol::Page::ResourceType* type, const String* targetId)
736{
737 Ref<JSON::Object> jsonMessage = JSON::Object::create();
738 jsonMessage->setString("method"_s, "Network.requestWillBeSent"_s);
739 Ref<JSON::Object> paramsObject = JSON::Object::create();
740 paramsObject->setString("requestId"_s, requestId);
741 paramsObject->setString("frameId"_s, frameId);
742 paramsObject->setString("loaderId"_s, loaderId);
743 paramsObject->setString("documentURL"_s, documentURL);
744 paramsObject->setObject("request"_s, request);
745 paramsObject->setDouble("timestamp"_s, timestamp);
746 paramsObject->setDouble("walltime"_s, walltime);
747 paramsObject->setObject("initiator"_s, initiator);
748 if (redirectResponse)
749 paramsObject->setObject("redirectResponse"_s, redirectResponse);
750 if (type)
751 paramsObject->setString("type"_s, Inspector::Protocol::InspectorHelpers::getEnumConstantValue(*type));
752 if (targetId)
753 paramsObject->setString("targetId"_s, *targetId);
754 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
755
756 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
757}
758
759void NetworkFrontendDispatcher::responseReceived(const String& requestId, const String& frameId, const String& loaderId, double timestamp, Inspector::Protocol::Page::ResourceType type, RefPtr<Inspector::Protocol::Network::Response> response)
760{
761 Ref<JSON::Object> jsonMessage = JSON::Object::create();
762 jsonMessage->setString("method"_s, "Network.responseReceived"_s);
763 Ref<JSON::Object> paramsObject = JSON::Object::create();
764 paramsObject->setString("requestId"_s, requestId);
765 paramsObject->setString("frameId"_s, frameId);
766 paramsObject->setString("loaderId"_s, loaderId);
767 paramsObject->setDouble("timestamp"_s, timestamp);
768 paramsObject->setString("type"_s, Inspector::Protocol::InspectorHelpers::getEnumConstantValue(type));
769 paramsObject->setObject("response"_s, response);
770 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
771
772 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
773}
774
775void NetworkFrontendDispatcher::dataReceived(const String& requestId, double timestamp, int dataLength, int encodedDataLength)
776{
777 Ref<JSON::Object> jsonMessage = JSON::Object::create();
778 jsonMessage->setString("method"_s, "Network.dataReceived"_s);
779 Ref<JSON::Object> paramsObject = JSON::Object::create();
780 paramsObject->setString("requestId"_s, requestId);
781 paramsObject->setDouble("timestamp"_s, timestamp);
782 paramsObject->setInteger("dataLength"_s, dataLength);
783 paramsObject->setInteger("encodedDataLength"_s, encodedDataLength);
784 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
785
786 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
787}
788
789void NetworkFrontendDispatcher::loadingFinished(const String& requestId, double timestamp, const String* sourceMapURL, RefPtr<Inspector::Protocol::Network::Metrics> metrics)
790{
791 Ref<JSON::Object> jsonMessage = JSON::Object::create();
792 jsonMessage->setString("method"_s, "Network.loadingFinished"_s);
793 Ref<JSON::Object> paramsObject = JSON::Object::create();
794 paramsObject->setString("requestId"_s, requestId);
795 paramsObject->setDouble("timestamp"_s, timestamp);
796 if (sourceMapURL)
797 paramsObject->setString("sourceMapURL"_s, *sourceMapURL);
798 if (metrics)
799 paramsObject->setObject("metrics"_s, metrics);
800 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
801
802 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
803}
804
805void NetworkFrontendDispatcher::loadingFailed(const String& requestId, double timestamp, const String& errorText, const bool* canceled)
806{
807 Ref<JSON::Object> jsonMessage = JSON::Object::create();
808 jsonMessage->setString("method"_s, "Network.loadingFailed"_s);
809 Ref<JSON::Object> paramsObject = JSON::Object::create();
810 paramsObject->setString("requestId"_s, requestId);
811 paramsObject->setDouble("timestamp"_s, timestamp);
812 paramsObject->setString("errorText"_s, errorText);
813 if (canceled)
814 paramsObject->setBoolean("canceled"_s, *canceled);
815 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
816
817 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
818}
819
820void NetworkFrontendDispatcher::requestServedFromMemoryCache(const String& requestId, const String& frameId, const String& loaderId, const String& documentURL, double timestamp, RefPtr<Inspector::Protocol::Network::Initiator> initiator, RefPtr<Inspector::Protocol::Network::CachedResource> resource)
821{
822 Ref<JSON::Object> jsonMessage = JSON::Object::create();
823 jsonMessage->setString("method"_s, "Network.requestServedFromMemoryCache"_s);
824 Ref<JSON::Object> paramsObject = JSON::Object::create();
825 paramsObject->setString("requestId"_s, requestId);
826 paramsObject->setString("frameId"_s, frameId);
827 paramsObject->setString("loaderId"_s, loaderId);
828 paramsObject->setString("documentURL"_s, documentURL);
829 paramsObject->setDouble("timestamp"_s, timestamp);
830 paramsObject->setObject("initiator"_s, initiator);
831 paramsObject->setObject("resource"_s, resource);
832 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
833
834 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
835}
836
837void NetworkFrontendDispatcher::webSocketWillSendHandshakeRequest(const String& requestId, double timestamp, double walltime, RefPtr<Inspector::Protocol::Network::WebSocketRequest> request)
838{
839 Ref<JSON::Object> jsonMessage = JSON::Object::create();
840 jsonMessage->setString("method"_s, "Network.webSocketWillSendHandshakeRequest"_s);
841 Ref<JSON::Object> paramsObject = JSON::Object::create();
842 paramsObject->setString("requestId"_s, requestId);
843 paramsObject->setDouble("timestamp"_s, timestamp);
844 paramsObject->setDouble("walltime"_s, walltime);
845 paramsObject->setObject("request"_s, request);
846 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
847
848 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
849}
850
851void NetworkFrontendDispatcher::webSocketHandshakeResponseReceived(const String& requestId, double timestamp, RefPtr<Inspector::Protocol::Network::WebSocketResponse> response)
852{
853 Ref<JSON::Object> jsonMessage = JSON::Object::create();
854 jsonMessage->setString("method"_s, "Network.webSocketHandshakeResponseReceived"_s);
855 Ref<JSON::Object> paramsObject = JSON::Object::create();
856 paramsObject->setString("requestId"_s, requestId);
857 paramsObject->setDouble("timestamp"_s, timestamp);
858 paramsObject->setObject("response"_s, response);
859 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
860
861 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
862}
863
864void NetworkFrontendDispatcher::webSocketCreated(const String& requestId, const String& url)
865{
866 Ref<JSON::Object> jsonMessage = JSON::Object::create();
867 jsonMessage->setString("method"_s, "Network.webSocketCreated"_s);
868 Ref<JSON::Object> paramsObject = JSON::Object::create();
869 paramsObject->setString("requestId"_s, requestId);
870 paramsObject->setString("url"_s, url);
871 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
872
873 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
874}
875
876void NetworkFrontendDispatcher::webSocketClosed(const String& requestId, double timestamp)
877{
878 Ref<JSON::Object> jsonMessage = JSON::Object::create();
879 jsonMessage->setString("method"_s, "Network.webSocketClosed"_s);
880 Ref<JSON::Object> paramsObject = JSON::Object::create();
881 paramsObject->setString("requestId"_s, requestId);
882 paramsObject->setDouble("timestamp"_s, timestamp);
883 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
884
885 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
886}
887
888void NetworkFrontendDispatcher::webSocketFrameReceived(const String& requestId, double timestamp, RefPtr<Inspector::Protocol::Network::WebSocketFrame> response)
889{
890 Ref<JSON::Object> jsonMessage = JSON::Object::create();
891 jsonMessage->setString("method"_s, "Network.webSocketFrameReceived"_s);
892 Ref<JSON::Object> paramsObject = JSON::Object::create();
893 paramsObject->setString("requestId"_s, requestId);
894 paramsObject->setDouble("timestamp"_s, timestamp);
895 paramsObject->setObject("response"_s, response);
896 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
897
898 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
899}
900
901void NetworkFrontendDispatcher::webSocketFrameError(const String& requestId, double timestamp, const String& errorMessage)
902{
903 Ref<JSON::Object> jsonMessage = JSON::Object::create();
904 jsonMessage->setString("method"_s, "Network.webSocketFrameError"_s);
905 Ref<JSON::Object> paramsObject = JSON::Object::create();
906 paramsObject->setString("requestId"_s, requestId);
907 paramsObject->setDouble("timestamp"_s, timestamp);
908 paramsObject->setString("errorMessage"_s, errorMessage);
909 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
910
911 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
912}
913
914void NetworkFrontendDispatcher::webSocketFrameSent(const String& requestId, double timestamp, RefPtr<Inspector::Protocol::Network::WebSocketFrame> response)
915{
916 Ref<JSON::Object> jsonMessage = JSON::Object::create();
917 jsonMessage->setString("method"_s, "Network.webSocketFrameSent"_s);
918 Ref<JSON::Object> paramsObject = JSON::Object::create();
919 paramsObject->setString("requestId"_s, requestId);
920 paramsObject->setDouble("timestamp"_s, timestamp);
921 paramsObject->setObject("response"_s, response);
922 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
923
924 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
925}
926
927void PageFrontendDispatcher::domContentEventFired(double timestamp)
928{
929 Ref<JSON::Object> jsonMessage = JSON::Object::create();
930 jsonMessage->setString("method"_s, "Page.domContentEventFired"_s);
931 Ref<JSON::Object> paramsObject = JSON::Object::create();
932 paramsObject->setDouble("timestamp"_s, timestamp);
933 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
934
935 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
936}
937
938void PageFrontendDispatcher::loadEventFired(double timestamp)
939{
940 Ref<JSON::Object> jsonMessage = JSON::Object::create();
941 jsonMessage->setString("method"_s, "Page.loadEventFired"_s);
942 Ref<JSON::Object> paramsObject = JSON::Object::create();
943 paramsObject->setDouble("timestamp"_s, timestamp);
944 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
945
946 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
947}
948
949void PageFrontendDispatcher::frameNavigated(RefPtr<Inspector::Protocol::Page::Frame> frame)
950{
951 Ref<JSON::Object> jsonMessage = JSON::Object::create();
952 jsonMessage->setString("method"_s, "Page.frameNavigated"_s);
953 Ref<JSON::Object> paramsObject = JSON::Object::create();
954 paramsObject->setObject("frame"_s, frame);
955 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
956
957 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
958}
959
960void PageFrontendDispatcher::frameDetached(const String& frameId)
961{
962 Ref<JSON::Object> jsonMessage = JSON::Object::create();
963 jsonMessage->setString("method"_s, "Page.frameDetached"_s);
964 Ref<JSON::Object> paramsObject = JSON::Object::create();
965 paramsObject->setString("frameId"_s, frameId);
966 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
967
968 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
969}
970
971void PageFrontendDispatcher::frameStartedLoading(const String& frameId)
972{
973 Ref<JSON::Object> jsonMessage = JSON::Object::create();
974 jsonMessage->setString("method"_s, "Page.frameStartedLoading"_s);
975 Ref<JSON::Object> paramsObject = JSON::Object::create();
976 paramsObject->setString("frameId"_s, frameId);
977 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
978
979 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
980}
981
982void PageFrontendDispatcher::frameStoppedLoading(const String& frameId)
983{
984 Ref<JSON::Object> jsonMessage = JSON::Object::create();
985 jsonMessage->setString("method"_s, "Page.frameStoppedLoading"_s);
986 Ref<JSON::Object> paramsObject = JSON::Object::create();
987 paramsObject->setString("frameId"_s, frameId);
988 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
989
990 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
991}
992
993void PageFrontendDispatcher::frameScheduledNavigation(const String& frameId, double delay)
994{
995 Ref<JSON::Object> jsonMessage = JSON::Object::create();
996 jsonMessage->setString("method"_s, "Page.frameScheduledNavigation"_s);
997 Ref<JSON::Object> paramsObject = JSON::Object::create();
998 paramsObject->setString("frameId"_s, frameId);
999 paramsObject->setDouble("delay"_s, delay);
1000 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1001
1002 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1003}
1004
1005void PageFrontendDispatcher::frameClearedScheduledNavigation(const String& frameId)
1006{
1007 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1008 jsonMessage->setString("method"_s, "Page.frameClearedScheduledNavigation"_s);
1009 Ref<JSON::Object> paramsObject = JSON::Object::create();
1010 paramsObject->setString("frameId"_s, frameId);
1011 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1012
1013 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1014}
1015
1016void PageFrontendDispatcher::defaultAppearanceDidChange(Inspector::Protocol::Page::Appearance appearance)
1017{
1018 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1019 jsonMessage->setString("method"_s, "Page.defaultAppearanceDidChange"_s);
1020 Ref<JSON::Object> paramsObject = JSON::Object::create();
1021 paramsObject->setString("appearance"_s, Inspector::Protocol::InspectorHelpers::getEnumConstantValue(appearance));
1022 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1023
1024 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1025}
1026
1027void RuntimeFrontendDispatcher::executionContextCreated(RefPtr<Inspector::Protocol::Runtime::ExecutionContextDescription> context)
1028{
1029 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1030 jsonMessage->setString("method"_s, "Runtime.executionContextCreated"_s);
1031 Ref<JSON::Object> paramsObject = JSON::Object::create();
1032 paramsObject->setObject("context"_s, context);
1033 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1034
1035 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1036}
1037
1038void ScriptProfilerFrontendDispatcher::trackingStart(double timestamp)
1039{
1040 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1041 jsonMessage->setString("method"_s, "ScriptProfiler.trackingStart"_s);
1042 Ref<JSON::Object> paramsObject = JSON::Object::create();
1043 paramsObject->setDouble("timestamp"_s, timestamp);
1044 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1045
1046 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1047}
1048
1049void ScriptProfilerFrontendDispatcher::trackingUpdate(RefPtr<Inspector::Protocol::ScriptProfiler::Event> event)
1050{
1051 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1052 jsonMessage->setString("method"_s, "ScriptProfiler.trackingUpdate"_s);
1053 Ref<JSON::Object> paramsObject = JSON::Object::create();
1054 paramsObject->setObject("event"_s, event);
1055 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1056
1057 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1058}
1059
1060void ScriptProfilerFrontendDispatcher::trackingComplete(double timestamp, RefPtr<Inspector::Protocol::ScriptProfiler::Samples> samples)
1061{
1062 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1063 jsonMessage->setString("method"_s, "ScriptProfiler.trackingComplete"_s);
1064 Ref<JSON::Object> paramsObject = JSON::Object::create();
1065 paramsObject->setDouble("timestamp"_s, timestamp);
1066 if (samples)
1067 paramsObject->setObject("samples"_s, samples);
1068 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1069
1070 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1071}
1072
1073void TargetFrontendDispatcher::targetCreated(RefPtr<Inspector::Protocol::Target::TargetInfo> targetInfo)
1074{
1075 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1076 jsonMessage->setString("method"_s, "Target.targetCreated"_s);
1077 Ref<JSON::Object> paramsObject = JSON::Object::create();
1078 paramsObject->setObject("targetInfo"_s, targetInfo);
1079 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1080
1081 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1082}
1083
1084void TargetFrontendDispatcher::targetDestroyed(const String& targetId)
1085{
1086 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1087 jsonMessage->setString("method"_s, "Target.targetDestroyed"_s);
1088 Ref<JSON::Object> paramsObject = JSON::Object::create();
1089 paramsObject->setString("targetId"_s, targetId);
1090 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1091
1092 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1093}
1094
1095void TargetFrontendDispatcher::dispatchMessageFromTarget(const String& targetId, const String& message)
1096{
1097 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1098 jsonMessage->setString("method"_s, "Target.dispatchMessageFromTarget"_s);
1099 Ref<JSON::Object> paramsObject = JSON::Object::create();
1100 paramsObject->setString("targetId"_s, targetId);
1101 paramsObject->setString("message"_s, message);
1102 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1103
1104 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1105}
1106
1107void TimelineFrontendDispatcher::eventRecorded(RefPtr<Inspector::Protocol::Timeline::TimelineEvent> record)
1108{
1109 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1110 jsonMessage->setString("method"_s, "Timeline.eventRecorded"_s);
1111 Ref<JSON::Object> paramsObject = JSON::Object::create();
1112 paramsObject->setObject("record"_s, record);
1113 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1114
1115 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1116}
1117
1118void TimelineFrontendDispatcher::recordingStarted(double startTime)
1119{
1120 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1121 jsonMessage->setString("method"_s, "Timeline.recordingStarted"_s);
1122 Ref<JSON::Object> paramsObject = JSON::Object::create();
1123 paramsObject->setDouble("startTime"_s, startTime);
1124 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1125
1126 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1127}
1128
1129void TimelineFrontendDispatcher::recordingStopped(double endTime)
1130{
1131 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1132 jsonMessage->setString("method"_s, "Timeline.recordingStopped"_s);
1133 Ref<JSON::Object> paramsObject = JSON::Object::create();
1134 paramsObject->setDouble("endTime"_s, endTime);
1135 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1136
1137 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1138}
1139
1140void TimelineFrontendDispatcher::autoCaptureStarted()
1141{
1142 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1143 jsonMessage->setString("method"_s, "Timeline.autoCaptureStarted"_s);
1144
1145 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1146}
1147
1148void WorkerFrontendDispatcher::workerCreated(const String& workerId, const String& url)
1149{
1150 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1151 jsonMessage->setString("method"_s, "Worker.workerCreated"_s);
1152 Ref<JSON::Object> paramsObject = JSON::Object::create();
1153 paramsObject->setString("workerId"_s, workerId);
1154 paramsObject->setString("url"_s, url);
1155 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1156
1157 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1158}
1159
1160void WorkerFrontendDispatcher::workerTerminated(const String& workerId)
1161{
1162 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1163 jsonMessage->setString("method"_s, "Worker.workerTerminated"_s);
1164 Ref<JSON::Object> paramsObject = JSON::Object::create();
1165 paramsObject->setString("workerId"_s, workerId);
1166 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1167
1168 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1169}
1170
1171void WorkerFrontendDispatcher::dispatchMessageFromWorker(const String& workerId, const String& message)
1172{
1173 Ref<JSON::Object> jsonMessage = JSON::Object::create();
1174 jsonMessage->setString("method"_s, "Worker.dispatchMessageFromWorker"_s);
1175 Ref<JSON::Object> paramsObject = JSON::Object::create();
1176 paramsObject->setString("workerId"_s, workerId);
1177 paramsObject->setString("message"_s, message);
1178 jsonMessage->setObject("params"_s, WTFMove(paramsObject));
1179
1180 m_frontendRouter.sendEvent(jsonMessage->toJSONString());
1181}
1182
1183} // namespace Inspector
1184