eLabSDK2.Bootloader.AddonChannel
Per-add-on MessagePort wrapper. One instance owns the host-side end of the MessageChannel created by IframeFactory; the iframe-side end was transferred during init. Responsibilities:
- Outbound
request(method, args)→ assigns a request id, writes a pending entry, posts the message, returns a Promise that the RpcBroker (incoming-message handler) resolves or rejects on the matchingresult/errorreply. - Outbound fire-and-forget
send(msg)for messages without a reply (e.g.reinit,dispose-handlers). - Routing of inbound messages (
port.onmessage) into a handler the RpcBroker installs viasetIncomingHandler— so the broker is the single place where SDK calls and addon-error events are interpreted. - Disposal:
close()rejects every pending request with AbortError, closes the port, and is idempotent.
© 2026 eLabNext
Updated about 16 hours ago