pipe-matrix

0.0.2 • Public • Published

Pipe Matrix

Run pipe queue one by one.

When you are using pipe-queue, you may want to run these queues one by one syncly. However, pipe-matrix help you to reach this.

By using pipe-matrix, you can arrange which queue to run first and the next...

Before you start, you may read about pipe-queue. pipe-matrix is for pipe-queue, if you have not used pipe-queue in your project, you may not use pipe-matrix.

Install

$ npm install pipe-matrix

Usage

var PipeQueue = require('pipe-queue');
var PipeMatrix = require('pipe-matrix');

var $queue1 = new PipeQueue();
$queue1.when(...).then(...)....

var $matrix = new PipeMatrix();

$matrix.when($queue1).then(function(next){
	var $queue2 = new PipeQueue();
	$queue2.when(...).then(...)...
		.end(next);
}).then(function(next){
	var $queue3 = ...
	...
})
...
.end(function(){
	console.log('matrix end.')
});

.when(queue)

The first queue to run, after this queue ended, the next then callback function will be run.

Don't call .end() of $queue1, end() of $queue1 will be nouse. In fact, when will override the end callback functon of $queue1.

.then(function(next))

function will be added to a list which pipe-matrix will run one by one.

In the function, you must run a next(), or next then callback function will not run util you run next().

next is an alias of $matrix, so you can use $matrix.next() anywhere.

Not like pipe-queue, pipe-matrix does not provide a concat function. If you want to run more than one queue in a then callback function, just use .when() to realize:

var $matrix = new PipeMatrix();
var $matrix.when(...).then(function(next){
	$matrix.when(...queues).end(next);
}).then...

So, PipeMatrix.when to queue is almost like pipe-concat to stream.

.end(function)

In this function, you can put code which you want to run after all queues finished.

Development

git clone from here

Source code is written by ES6, run

npm install
npm run babel

after you change the source code.

Readme

Keywords

none

Package Sidebar

Install

npm i pipe-matrix

Weekly Downloads

0

Version

0.0.2

License

ISC

Last publish

Collaborators

  • tangshuang