Ver código fonte

use newly abstracted oncemore module

Gil Pedersen 12 anos atrás
pai
commit
0d54d33280
5 arquivos alterados com 7 adições e 47 exclusões
  1. 3 3
      bin/hlsdump
  2. 0 41
      lib/oncemore.js
  3. 1 1
      lib/reader.js
  4. 1 1
      lib/uristream.js
  5. 2 1
      package.json

+ 3 - 3
bin/hlsdump

@@ -35,11 +35,11 @@ var util = require('util'),
     fs = require('fs'),
     http = require('http');
 
-var streamprocess = require('streamprocess');
+var streamprocess = require('streamprocess'),
+    oncemore = require('oncemore');
 var reader = require('../lib/reader'),
     tssmooth = require('../lib/tssmooth'),
-    tsblast = require('../lib/tsblast'),
-    oncemore = require('../lib/oncemore');
+    tsblast = require('../lib/tsblast');
 
 try {
   var Passthrough = require('stream').Passthrough;

+ 0 - 41
lib/oncemore.js

@@ -1,41 +0,0 @@
-"use strict";
-
-var util = require('util');
-
-module.exports = oncemore;
-
-// apply oncemore() to an emitter, and enable it to accept multiple events as input 
-function oncemore(emitter) {
-  if (!emitter) return emitter;
-
-  var once = emitter.once;
-  if (once && !once._old) {
-    emitter.once = function(type, listener) {
-      if (arguments.length <= 2)
-        return once.apply(this, arguments);
-
-      var types = Array.prototype.slice.call(arguments, 0, -1);
-      var listener = arguments.length ? arguments[arguments.length-1] : undefined;
-      if (typeof listener !== 'function')
-        throw TypeError('listener must be a function');
-
-      function g() {
-        types.forEach(function(type) {
-          this.removeListener(type, g);
-        }, this);
-
-        listener.apply(this, arguments);
-      }
-      g.listener = listener;
-
-      types.forEach(function(type) {
-        this.on(type, g);
-      }, this);
-
-      return this;
-    };
-    emitter.once._old = once;
-  }
-
-  return emitter;
-}

+ 1 - 1
lib/reader.js

@@ -9,7 +9,7 @@ var util = require('util'),
 
 var request = require('request'),
     extend = require('xtend'),
-    oncemore = require('./oncemore'),
+    oncemore = require('oncemore'),
     uristream = require('./uristream'),
     debug = require('debug')('hls:reader');
 

+ 1 - 1
lib/uristream.js

@@ -8,7 +8,7 @@ var util = require('util'),
 var request = require('request'),
     extend = require('xtend'),
     equal = require('deep-equal'),
-    oncemore = require('./oncemore'),
+    oncemore = require('oncemore'),
     debug = require('debug')('hls:uristream');
 
 try {

+ 2 - 1
package.json

@@ -33,7 +33,8 @@
     "xtend": "~2.0.3",
     "deep-equal": "0.0.0",
     "measured": "~0.1.3",
-    "streamprocess": "0.0.1"
+    "streamprocess": "0.0.1",
+    "oncemore": "~0.1.0"
   },
   "devDependencies": {
     "mocha": "~1.11.0",