stream-combiner2-withopts

2.0.0 • Public • Published

stream-combiner2-withopts

Build Status Dependency Status devDependency Status Downloads

This is an extension of stream-combiner2, which is a sequel to stream-combiner for streams3. This extension takes any options and passes them along to the stream constructors.

NPM

var Combine = require('stream-combiner2-withopts')

Combine (stream1,...,streamN, opts)

Turn a pipeline into a single stream. Combine returns a stream that writes to the first stream and reads from the last stream.

Streams1 streams are automatically upgraded to be streams3 streams.

Listening for 'error' will recieve errors from all streams inside the pipe.

'opts' is an optional options object that will be passed to the stream constructors.

.unwrap() is available on the combined stream, to unbind and unpipe the streams for reuse and cleanup.

var Combine = require('stream-combiner2-withopts')
var es      = require('event-stream')
 
var combined = Combine(                   // connect streams together with `pipe`
  process.openStdin(),                    // open stdin
  es.split(),                             // split stream to break on newlines
  es.map(function (data, callback) {      // turn this async function into a stream
    var repr = inspect(JSON.parse(data))  // render it nicely
    callback(null, repr)
  }),
  process.stdout                          // pipe it to stdout !
)
...
combined.unwrap()                         // disconnect pipes and events

Merge

Merge returns a stream that is the result of merging writes from multiple streams into a single output stream. (This is in contrast to Combine. Combine pipes the streams end-to-end.)

Streams1 streams are automatically upgraded to be streams3 streams.

Listening for 'error' will recieve errors from all streams inside the pipe.

'opts' is an optional options object that will be passed to the stream constructors.

.unwrap() is available on the merged stream, to unbind and unpipe the streams for reuse and cleanup.

.remove(source) is available on the merged stream, to remove a single source from the merged group.

var Merge   = require('stream-combiner2-withopts').Merge
var es      = require('event-stream')
 
var merged = Merge(                   // connect streams together with `pipe`
  process.openStdin(),                // open stdin
  fs.createReadStream(file.txt)       // merge stdin with a text file
)
merged.pipe(process.stdout)           // pipe it to stdout !
...
merged.unwrap()                       // disconnect pipes and events

Merge is primarily inspired by merge-stream

License

MIT

Package Sidebar

Install

npm i stream-combiner2-withopts

Weekly Downloads

5

Version

2.0.0

License

MIT

Last publish

Collaborators

  • doublerebel