aboutsummaryrefslogtreecommitdiff
path: root/common/message_server.js
blob: ea4048783ff470380e2823ba6719a8a4e35412c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/**
 * Hachette message server
 *
 * Copyright (C) 2021 Wojtek Kosior
 * Redistribution terms are gathered in the `copyright' file.
 */

/*
 * IMPORTS_START
 * IMPORT browser
 * IMPORTS_END
 */

var listeners = {};

/* magic should be one of the constants from /common/connection_types.js */

function listen_for_connection(magic, cb)
{
    listeners[magic] = cb;
}

function raw_listen(port)
{
    if (listeners[port.name] === undefined)
	return;

    listeners[port.name](port);
}

browser.runtime.onConnect.addListener(raw_listen);

/*
 * EXPORTS_START
 * EXPORT listen_for_connection
 * EXPORTS_END
 */