UNPKG

node-peercast

Version:
46 lines (45 loc) 1.44 kB
var __extends = this.__extends || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; function __() { this.constructor = d; } __.prototype = b.prototype; d.prototype = new __(); }; var events = require('events'); var log4js = require('log4js'); var PcpHub = require('./pcphub'); var logger = log4js.getLogger(); var PeerCast = (function (_super) { __extends(PeerCast, _super); function PeerCast(localPort) { var _this = this; _super.call(this); this.localPort = localPort; this.hub = new PcpHub(); this.hub.listen(localPort, function (socket) { socket.on('hello', function () { socket.olleh(); }); _this.on('end', function () { }); }); } PeerCast.prototype.connect = function (remoteAddress, remotePort) { var _this = this; this.hub.connect(remoteAddress, remotePort, function (socket) { socket.on('olleh', function () { _this.emit('connected'); }); socket.sendPCPHeader(); socket.hello(_this.localPort); _this.on('end', function () { socket.quit(); }); }); }; PeerCast.prototype.quit = function () { logger.debug('quit()'); this.emit('end'); }; return PeerCast; })(events.EventEmitter); module.exports = PeerCast;