module.exports = function (key, opts) { if (!opts) opts = {} var stream = createStream(key, opts) var swarm if (!opts.static || !stream.write) { swarm = createSwarm(stream.feed, { port: null }) patch(stream, swarm) if (opts.exit) { stream.on('end', function () { swarm.close() }) stream.on('finish', function () { swarm.close() }) } } else { stream.on('finish', function () { if (!opts.exit) { swarm = createSwarm(stream.feed, { port: null }) patch(stream, swarm) } }) } return stream }
portfinder.getPort((err, port) => { if (err) throw err self.metadataswarm = discover(self.metadata, { tcp: true, utp: true, port: port, live: true, upload: true, download: true, dht: false }) })
portfinder.getPort((err, port) => { if (err) throw err self.articlesswarm = discover(self.articles, { tcp: true, utp: true, port: port, live: true, upload: true, download: true, dht: false }) self.articlesswarm.on('connection', (peer, type) => { self.stats.set('peers', self.articlesswarm.connections.length).write() peer.on('close', () => { self.stats.set('peers', self.articlesswarm.connections.length).write() }) }) })
stream.on('finish', function () { if (!opts.exit) { swarm = createSwarm(stream.feed, { port: null }) patch(stream, swarm) } })