UNPKG

node-peercast

Version:
35 lines (34 loc) 1.25 kB
var net = require('net'); var log4js = require('log4js'); var PcpSocket = require('./pcpsocket'); var HeaderReader = require('./headerreader'); var logger = log4js.getLogger(); var PcpHub = (function () { function PcpHub() { } PcpHub.prototype.listen = function (port, connectionListener) { logger.info('listening... ' + port); var server = net.createServer(function (socket) { var headerReader = new HeaderReader(); var readableListener = function () { var header = headerReader.read(socket); if (header == null) { return; } headerReader = null; socket.removeListener('readable', readableListener); }; socket.addListener('readable', readableListener); connectionListener(new PcpSocket(socket)); }); server.listen(port); }; PcpHub.prototype.connect = function (host, port, connectionListener) { logger.info('connecting... ' + host + ':' + port); var socket = net.connect(port, host, function () { connectionListener(new PcpSocket(socket)); }); }; return PcpHub; })(); module.exports = PcpHub;