diff options
Diffstat (limited to 'node_modules/ordered-read-streams/README.md')
-rw-r--r-- | node_modules/ordered-read-streams/README.md | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/node_modules/ordered-read-streams/README.md b/node_modules/ordered-read-streams/README.md new file mode 100644 index 000000000..8f8be53b3 --- /dev/null +++ b/node_modules/ordered-read-streams/README.md @@ -0,0 +1,65 @@ +# ordered-read-streams [](http://badge.fury.io/js/ordered-read-streams) [](https://travis-ci.org/armed/ordered-read-streams) + +Combines array of streams into one read stream in strict order. + +## Installation + +`npm install ordered-read-streams` + +## Overview + +`ordered-read-streams` handles all data/errors from input streams in parallel, but emits data/errors in strict order in which streams are passed to constructor. This is `objectMode = true` stream. + +## Example + +```js +var through = require('through2'); +var Ordered = require('ordered-read-streams'); + +var s1 = through.obj(function (data, enc, next) { + var self = this; + setTimeout(function () { + self.push(data); + next(); + }, 200) +}); +var s2 = through.obj(function (data, enc, next) { + var self = this; + setTimeout(function () { + self.push(data); + next(); + }, 30) +}); +var s3 = through.obj(function (data, enc, next) { + var self = this; + setTimeout(function () { + self.push(data); + next(); + }, 100) +}); + +var streams = new Ordered([s1, s2, s3]); +streams.on('data', function (data) { + console.log(data); +}) + +s1.write('stream 1'); +s1.end(); + +s2.write('stream 2'); +s2.end(); + +s3.write('stream 3'); +s3.end(); +``` +Ouput will be: + +``` +stream 1 +stream 2 +stream 3 +``` + +## Licence + +MIT |