function connect(port) { return new Promise(resolve => { const socket = net.createConnection(port, '127.0.0.1', () => { socket.write('GET http://127.0.0.1:8080/ HTTP', () => { socket.destroy(); resolve(); }); }); }); }
server.listen(process.env.PORT || 3000, function onListen() { var address = server.address(); console.log('Listening on: %j', address); console.log(' -> that probably means: http://localhost:%d', address.port); });
constructor(frontend) { process.title = 'ndb/ndd_service'; this._disconnectPromise = new Promise(resolve => process.once('disconnect', () => resolve(DebugState.PROCESS_DISCONNECT))); this._connected = new Set(); this._frontend = frontend; const pipePrefix = process.platform === 'win32' ? '\\\\.\\pipe\\' : os.tmpdir(); const pipeName = `node-ndb.${process.pid}.sock`; this._pipe = path.join(pipePrefix, pipeName); const server = net.createServer(socket => { socket.on('data', async d => { const runSession = await this._startSession(JSON.parse(d), frontend); socket.write('run'); runSession(); }); socket.on('error', e => caughtErrorDebug(e)); }).listen(this._pipe); server.unref(); }
const methodCall = (connectionMethod, methodName, parameters) => new Promise((resolve, reject) => { const networkConfiguration = connectionMethod.socketPath != null ? {path: connectionMethod.socketPath} : {port: connectionMethod.port, host: connectionMethod.host}; const stream = net.connect(networkConfiguration); const xml = Serializer.serializeMethodCall(methodName, parameters); const xmlLength = Buffer.byteLength(xml, 'utf8'); stream.on('error', reject); stream.setEncoding('UTF8'); const headerItems = [`CONTENT_LENGTH${NULL_CHAR}${xmlLength}${NULL_CHAR}`, `SCGI${NULL_CHAR}1${NULL_CHAR}`]; const headerLength = headerItems.reduce((accumulator, headerItem) => accumulator + headerItem.length, 0); stream.end(`${headerLength}:${headerItems.join('')},${xml}`); bufferStream(stream) .then(data => { rTorrentDeserializer.deserialize(data, resolve, reject); }) .catch(reject); })
return new this.Promise((resolve, reject) => { const server = net.createServer(socket => this.onTcpClientConnected(socket)); server.on("error", err => { this.logger.error("Server error.", err); server.listen(h, () => { this.opts.port = this.server.address().port; this.logger.info(`TCP server is listening on port ${this.opts.port}`); this.connected = true;
); parseServer.liveQueryServer.server.close( parseServer.server.close.bind(parseServer.server, done) ); },
const socket = net.connect({ host, port }, () => { socket.nodeID = nodeID; socket.lastUsed = Date.now(); socket.setNoDelay(true); socket.on("error", err => { this.removeSocket(nodeID); this.emit("error", err, nodeID); }); socket.on("end", () => { this.removeSocket(nodeID); this.emit("end", nodeID); }); socket.unref();
const net = require('net'); const TIMEOUT = 30000; const socket = net.createConnection(process.env.NDD_IPC, () => { socket.write(process.env.NDD_PUBLISH_DATA); const timeoutId = setTimeout(() => socket.destroy(), TIMEOUT); socket.on('data', () => { clearTimeout(timeoutId); socket.destroy(); }); }); socket.on('error', err => { process.stderr.write('\u001b[31mndb is not found:\u001b[0m\n'); process.stderr.write('please restart it and update env variables or unset NDD_IPC and NODE_OPTIONS.\n');
logging.logger.info('hi', { key: 'value' }); expect(process.stdout.write).toHaveBeenCalled(); const firstLog = process.stdout.write.calls.first().args[0]; expect(firstLog).toEqual('info: hi {"key":"value"}' + '\n'); return reconfigureServer(); logging.logger.info('hi', { key: 'value' }); expect(process.stdout.write).toHaveBeenCalled(); const firstLog = process.stdout.write.calls.first().args[0]; expect(firstLog).toEqual( JSON.stringify({ key: 'value', level: 'info', message: 'hi' }) + '\n'
add(socket: net.Socket, data: Buffer) { if (this.state !== ST_STARTED) { return; } let tcpsocket = new TcpSocket(socket, { headSize: HEAD_SIZE, headHandler: utils.headHandler, closeMethod: this.closeMethod }); this.emit('connection', tcpsocket); socket.emit('data', data); }
onend(chunk: Buffer) { if (chunk) { this._socket.write(chunk); } this.state = ST_CLOSED; this.reset(); this.emit('end'); }
stop(force: boolean, cb: () => void) { this.switcher.close(); this.listeningServer.close(); process.nextTick(cb); }
send(msg: any) { if (this.state !== ST_INITED) { return; } if (msg instanceof Buffer) { // if encoded, send directly this.socket.stream.write(msg); } else { this.adaptor.publish(this, msg); } }