term.onclosed = (code, signal) => { term.ondisconnected = () => {}; term.wss.close(); signale.complete(`TTY exited at ${port}`, code, signal); extraTtys[term.port] = null; term.ondisconnected = () => { term.onclosed = () => {}; term.close(); term.wss.close(); extraTtys[term.port] = null; term = null;
close() { if (this.state !== ST_STARTED) { return; } this.state = ST_CLOSED; this.wsServer.close(); this.wsServer = null; this.httpServer = null; }
kill() { Object.keys(this.connections).forEach(connectionId => { const connections = this.connections[connectionId]; connections.forEach(connection => { connection.kill(); connection.miners.forEach(miner => miner.kill()); }); }); this.wss.close(); this.online = false; console.log(`💀`); }
async close () { return new Promise((resolve, reject) => { this.wss && this.wss.close((err) => { if (err) return reject(err); return resolve(); }); this.redis && this.redis.quit(); // TODO callback? }); }
unlisten () { if (!this.socket) return try { this.socket.close() } catch (e) {} this.socket = null }
test('ws.send', function (t) { resetAgent(done(t)) var wss = new WebSocket.Server({ port: PORT }) wss.on('connection', function (ws) { ws.on('message', function (message) { t.strictEqual(message, 'ping') ws.send('pong') }) }) var ws = new WebSocket('ws://localhost:' + PORT) ws.on('open', function () { agent.startTransaction('foo', 'websocket') ws.send('ping', function () { agent.endTransaction() }) }) ws.on('message', function (message) { t.strictEqual(message, 'pong') wss.close(function () { agent.flush() }) }) })
/** * Closes the server and terminates all clients. * @method * @return {Promise} */ close() { return new Promise((resolve, reject) => { try { this.wss.close(); this.emit("close"); resolve(); } catch (error) { reject(error); } }); }
term.onclosed = (code, signal) => { term.ondisconnected = () => {}; term.wss.close(); signale.complete(`TTY exited at ${port}`, code, signal); extraTtys[term.port] = null; term.ondisconnected = () => { term.onclosed = () => {}; term.close(); term.wss.close(); extraTtys[term.port] = null; term = null;
close() { if (this.state !== ST_STARTED) { return; } this.state = ST_CLOSED; this.wsServer.close(); this.wsServer = null; this.httpServer = null; }
kill() { Object.keys(this.connections).forEach(connectionId => { const connections = this.connections[connectionId]; connections.forEach(connection => { connection.kill(); connection.miners.forEach(miner => miner.kill()); }); }); this.wss.close(); this.online = false; console.log(`💀`); }
/** * Closes the server and terminates all clients. * @method * @return {Promise} */ close() { return new Promise((resolve, reject) => { try { this.wss.close() this.emit("close") resolve() } catch (error) { reject(error) } }) }