UNPKG

sp-streams

Version:

Streamplace Streams for Piping Video Around and Stuff

63 lines (46 loc) 1.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = function () { var tmpDir = _os2.default.tmpdir(); var socketName = "sp-sock-" + Date.now() + "-" + Math.round(Math.random() * 1000) + ".sock"; var socketPath = (0, _path.resolve)(tmpDir, socketName); var server = _net2.default.createServer(function (c) { // 'connection' listener log("client connected"); c.on("error", function () { log("client errored"); }); c.on("end", function () { log("client disconnected"); }); c.write("hello\r\n"); c.pipe(socketStream); }); server.on("error", function (err) { socketStream.end(); throw err; }); server.listen(socketPath, function () { log("server bound to " + socketPath); }); var socketStream = new _stream2.default.PassThrough(); socketStream.destroy = function () { server.close(); }; socketStream.server = server; socketStream.path = socketPath; return socketStream; }; var _net = require("net"); var _net2 = _interopRequireDefault(_net); var _os = require("os"); var _os2 = _interopRequireDefault(_os); var _stream = require("stream"); var _stream2 = _interopRequireDefault(_stream); var _path = require("path"); var _debug = require("debug"); var _debug2 = _interopRequireDefault(_debug); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var log = (0, _debug2.default)("sp:socket-ingress-stream");