-
Notifications
You must be signed in to change notification settings - Fork 39
/
Copy pathipcServer.js
38 lines (30 loc) · 1.02 KB
/
ipcServer.js
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
38
const ipc = require('node-ipc');
const { consoleHolder } = require('../helper/constants');
const { requestQueueHandler } = require('../helper/helper');
exports.startIPCServer = (subscribeServerEvents, unsubscribeServerEvents) => {
if (ipc.server) {
unsubscribeServerEvents(ipc.server);
subscribeServerEvents(ipc.server);
return;
}
ipc.config.id = 'browserstackTestObservability';
ipc.config.retry = 1500;
ipc.config.silent = true;
ipc.serve(() => {
ipc.server.on('socket.disconnected', (socket, destroyedSocketID) => {
ipc.log(`client ${destroyedSocketID} has disconnected!`);
});
ipc.server.on('destroy', () => {
ipc.log('server destroyed');
});
subscribeServerEvents(ipc.server);
process.on('exit', () => {
console.log('here we goooo ' + process.pid)
unsubscribeServerEvents(ipc.server);
ipc.server.stop();
console.log('shutdown sync running');
requestQueueHandler.shutdownSync();
});
});
ipc.server.start();
};