Errors.sys.mjs |
@param {(string|Error)=} x
Optional string describing error situation or Error instance
to propagate.
|
2572 |
EventsDispatcher.sys.mjs |
Helper to listen to events which rely on SessionData.
In order to support the EventsDispatcher, a module emitting events should
subscribe and unsubscribe to those events based on SessionData updates
and should use the "event" SessionData category.
|
8242 |
MessageHandler.sys.mjs |
A ContextDescriptor object provides information to decide if a broadcast or
a session data item should be applied to a specific MessageHandler context.
@typedef {object} ContextDescriptor
@property {ContextDescriptorType} type
The type of context
@property {string=} id
Unique id of a given context for the provided type.
For ContextDescriptorType.All, id can be ommitted.
For ContextDescriptorType.TopBrowsingContext, the id should be the
browserId corresponding to a top-level browsing context.
|
11428 |
MessageHandlerRegistry.sys.mjs |
Map of MessageHandler type to MessageHandler subclass.
|
7468 |
Module.sys.mjs |
Create a new module instance.
@param {MessageHandler} messageHandler
The MessageHandler instance which owns this Module instance.
|
3746 |
ModuleCache.sys.mjs |
ModuleCache instances are dedicated to lazily create and cache the instances
of all the modules related to a specific MessageHandler instance.
ModuleCache also implements the logic to resolve the path to the file for a
given module, which depends both on the current MessageHandler context and on
the expected destination.
In order to implement module logic in any context, separate module files
should be created for each situation. For instance, for a given module,
- ${MODULES_FOLDER}/root/{ModuleName}.sys.mjs contains the implementation for
commands intended for the destination ROOT, and will be created for a ROOT
MessageHandler only. Typically, they will run in the parent process.
- ${MODULES_FOLDER}/windowglobal/{ModuleName}.sys.mjs contains the implementation
for commands intended for a WINDOW_GLOBAL destination, and will be created
for a WINDOW_GLOBAL MessageHandler only. Those will usually run in a
content process.
- ${MODULES_FOLDER}/windowglobal-in-root/{ModuleName}.sys.mjs also handles
commands intended for a WINDOW_GLOBAL destination, but they will be created
for the ROOT MessageHandler and will run in the parent process. This can be
useful if some code has to be executed in the parent process, even though
the final destination is a WINDOW_GLOBAL.
- And so on, as more MessageHandler types get added, more combinations will
follow based on the same pattern:
- {contextName}/{ModuleName}.sys.mjs
- or {destinationType}-in-{currentType}/{ModuleName}.sys.mjs
All those implementations are optional. If a module cannot be found, based on
the logic detailed above, the MessageHandler will assume that the command
should simply be forwarded to the next layer of the network.
|
10022 |
RootMessageHandler.sys.mjs |
A RootMessageHandler is the root node of a MessageHandler network. It lives
in the parent process. It can forward commands to MessageHandlers in other
layers (at the moment WindowGlobalMessageHandlers in content processes).
|
6631 |
RootMessageHandlerRegistry.sys.mjs |
In the parent process, only one Root MessageHandlerRegistry should ever be
created. All consumers can safely use this singleton to retrieve the Root
registry and from there either create or retrieve Root MessageHandler
instances for a specific session.
|
808 |
sessiondata |
|
|
test |
|
|
transports |
|
|
WindowGlobalMessageHandler.sys.mjs |
A WindowGlobalMessageHandler is dedicated to debugging a single window
global. It follows the lifecycle of the corresponding window global and will
therefore not survive any navigation. This MessageHandler cannot forward
commands further to other MessageHandlers and represents a leaf node in a
MessageHandler network.
|
7334 |