|
|
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]); } } }; };
|