0.0.0 • Published 10 years ago
stream-transformer v0.0.0
stream-transformer
A simple tool to transform streams via registered global or keyed handlers
Basic Usage
var transformer = new StreamTransformer();
transformer.write({foo: 'bar'});
transformer.on('data', function (transformed) {
transformed.should.eql({foo: 'bar'});
});
transformer.on('end', done);
Global Transformers
var transformer = new StreamTransformer();
transformer.register(function (data, done){
data.foo += '!';
done(data);
});
transformer.write({foo: 'bar'});
transformer.on('data', function (transformed){
transformed.should.eql({foo: 'bar!'});
});
transformer.on('end', done);
Keyed Transformers
var transformer = new StreamTransformer();
transformer.register('foo', function (data, done){
data.foo += '!';
done(data);
});
transformer.write(['foo', {foo: 'bar'}]);
transformer.on('data', function (transformed){
transformed.should.eql({foo: 'bar!'});
});
transformer.on('end', done);
Extended Transformers
var transformer = new StreamTransformer();
transformer.register('foo', function (data, done){
data.foo += '!';
done(data);
});
transformer.register('foo', function (data, done){
this._super(data, function (data){
data.foo += '1';
done(data);
})
});
transformer.write(['foo', {foo: 'bar'}]);
transformer.on('data', function (transformed){
transformed.should.eql({foo: 'bar!1'});
});
transformer.on('end', done);
0.0.0
10 years ago