| (function() { |
| var EventEmitter, PushTransfer, |
| __hasProp = {}.hasOwnProperty, |
| __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }; |
| |
| EventEmitter = require('events').EventEmitter; |
| |
| PushTransfer = (function(_super) { |
| __extends(PushTransfer, _super); |
| |
| function PushTransfer() { |
| this._stack = []; |
| this.stats = { |
| bytesTransferred: 0 |
| }; |
| } |
| |
| PushTransfer.prototype.cancel = function() { |
| return this.emit('cancel'); |
| }; |
| |
| PushTransfer.prototype.push = function(byteCount) { |
| return this._stack.push(byteCount); |
| }; |
| |
| PushTransfer.prototype.pop = function() { |
| var byteCount; |
| byteCount = this._stack.pop(); |
| this.stats.bytesTransferred += byteCount; |
| return this.emit('progress', this.stats); |
| }; |
| |
| PushTransfer.prototype.end = function() { |
| return this.emit('end'); |
| }; |
| |
| return PushTransfer; |
| |
| })(EventEmitter); |
| |
| module.exports = PushTransfer; |
| |
| }).call(this); |