From 697f025afac515e0a1b94ffb03474c7bec83434f Mon Sep 17 00:00:00 2001 From: Feross Aboukhadijeh Date: Mon, 28 Dec 2015 21:01:31 +0100 Subject: [PATCH] Add torrent.pause() API Fix #543 --- README.md | 9 +++++++++ lib/torrent.js | 10 ++++++++++ 2 files changed, 19 insertions(+) diff --git a/README.md b/README.md index c86a3ea7..edb05356 100644 --- a/README.md +++ b/README.md @@ -425,6 +425,15 @@ client.add(magnetUri, function (torrent) { }) ``` +#### `torrent.pause()` + +Temporarily stop connecting to new peers. Note that this does not pause new incoming +connections, nor does it pause the streams of existing connections or their wires. + +#### `torrent.resume()` + +Resume connecting to new peers. + #### `torrent.on('done', function () {})` Emitted when all the torrent's files have been downloaded diff --git a/lib/torrent.js b/lib/torrent.js index 71ee9dcb..1cc4d5c7 100644 --- a/lib/torrent.js +++ b/lib/torrent.js @@ -1205,6 +1205,16 @@ Torrent.prototype.createServer = function (opts) { return server } +Torrent.prototype.pause = function () { + if (this.destroyed) return + this.swarm.pause() +} + +Torrent.prototype.resume = function () { + if (this.destroyed) return + this.swarm.resume() +} + Torrent.prototype._onError = function (err) { var self = this debug('torrent error: %s', err.message || err)