aboutsummaryrefslogtreecommitdiff
path: root/node_modules/pause/index.js
diff options
context:
space:
mode:
authornanalelfe <nargiza.nosirova@mail.utoronto.ca>2016-07-21 06:40:43 +0000
committernanalelfe <nargiza.nosirova@mail.utoronto.ca>2016-07-21 06:40:43 +0000
commit39ef1b6fd37bb9b725676d3a98f13e3450798200 (patch)
treeeeec60d5b56e5c69a3ba251d98a27f4684d47066 /node_modules/pause/index.js
parentee8e1a13b60a6adfdc691b2a9b57289188397641 (diff)
parent76757d227f64e35a093d47facc260d9266e2bf38 (diff)
MERGED
Diffstat (limited to 'node_modules/pause/index.js')
-rw-r--r--node_modules/pause/index.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/node_modules/pause/index.js b/node_modules/pause/index.js
new file mode 100644
index 0000000..1b7b379
--- /dev/null
+++ b/node_modules/pause/index.js
@@ -0,0 +1,29 @@
+
+module.exports = function(obj){
+ var onData
+ , onEnd
+ , events = [];
+
+ // buffer data
+ obj.on('data', onData = function(data, encoding){
+ events.push(['data', data, encoding]);
+ });
+
+ // buffer end
+ obj.on('end', onEnd = function(data, encoding){
+ events.push(['end', data, encoding]);
+ });
+
+ return {
+ end: function(){
+ obj.removeListener('data', onData);
+ obj.removeListener('end', onEnd);
+ },
+ resume: function(){
+ this.end();
+ for (var i = 0, len = events.length; i < len; ++i) {
+ obj.emit.apply(obj, events[i]);
+ }
+ }
+ };
+}; \ No newline at end of file