Open Bug 1713438 Opened 3 years ago Updated 4 months ago

[meta] Implement MessageHandler architecture

Categories

(Remote Protocol :: WebDriver BiDi, task)

task

Tracking

(Not tracked)

People

(Reporter: jdescottes, Unassigned)

References

(Depends on 10 open bugs)

Details

(Keywords: meta)

Attachments

(7 files, 3 obsolete files)

Meta to implement the CommandsHandler architecture initially described in https://docs.google.com/presentation/d/1iIcVlQkNPhTj7wos2WbGV-7EqK6Qbbd8Kay5OjvH3ck/edit#slide=id.gcdb79f24e4_0_6 and https://docs.google.com/document/d/1Of3ZhWIAwYXPezuG_hMpmTK7Nv1a9_E_VsnBWtD2nD8/edit#heading=h.fhzr3f7daxcl

The CommandsHandler architecture should allow to:

  • reach any context relevant for either WebDriver BiDi or devtools (chrome window, content window, process, worker)
  • spawn modules in any relevant layer (parent process, content process main thread, content process worker thread)
  • support multiple sessions (eg one from WebDriver BiDi + one from DevTools)
  • route commands from the parent process to any context
  • intercept commands at any layer between the parent process and the destination
  • persist and broadcast session data (eg list of events currently subscribed to)
  • handle new contexts created during the session (eg new frame appearing)
Depends on: 1713439
Depends on: 1713440
Depends on: 1713441
Depends on: 1713442
Depends on: 1713443
Depends on: 1713642
Attached image CommandsHandler_scenario_1.svg (obsolete) —
Attached image CommandsHandler_scenario_2.svg (obsolete) —
Attached image CommandsHandler_scenario_3.svg (obsolete) —
Depends on: 1722464
Summary: [meta] Implement CommandsHandler architecture → [meta] Implement MessageHandler architecture
Depends on: 1722659
Depends on: 1723591
Depends on: 1723592
Blocks: 1723919
Depends on: 1724411
Depends on: 1726800
Depends on: 1730913
Depends on: 1733242
Depends on: 1740367
Depends on: 1741834
Depends on: 1741854
Depends on: 1741861
Depends on: 1742607
No longer blocks: 1723919
Depends on: 1723919
Depends on: 1755014
Depends on: 1764314
Attachment #9224931 - Attachment is obsolete: true
Attachment #9224932 - Attachment is obsolete: true
Attachment #9224933 - Attachment is obsolete: true
Depends on: 1775463
Depends on: 1783177
Depends on: 1873250
No longer depends on: 1733242
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: