Please enable JavaScript to use RhodeCode Enterprise
Commit Description:
add model solution
Commit Description:
add model solution
'use strict' ;
var Readable = require ( 'readable-stream' ). Readable ;
var utils = require ( '../utils' );
utils . inherits ( NodejsStreamOutputAdapter , Readable );
/**
* A nodejs stream using a worker as source.
* @see the SourceWrapper in http://nodejs.org/api/stream.html
* @constructor
* @param {StreamHelper} helper the helper wrapping the worker
* @param {Object} options the nodejs stream options
* @param {Function} updateCb the update callback.
*/
function NodejsStreamOutputAdapter ( helper , options , updateCb ) {
Readable . call ( this , options );
this . _helper = helper ;
var self = this ;
helper . on ( "data" , function ( data , meta ) {
if ( ! self . push ( data )) {
self . _helper . pause ();
}
if ( updateCb ) {
updateCb ( meta );
}
})
. on ( "error" , function ( e ) {
self . emit ( 'error' , e );
})
. on ( "end" , function () {
self . push ( null );
});
}
NodejsStreamOutputAdapter . prototype . _read = function () {
this . _helper . resume ();
};
module . exports = NodejsStreamOutputAdapter ;
Site-wide shortcuts
/
Use quick search box
g h
Goto home page
g g
Goto my private gists page
g G
Goto my public gists page
n r
New repository page
n g
New gist page
Repositories
g s
Goto summary page
g c
Goto changelog page
g f
Goto files page
g F
Goto files page with file search activated
g p
Goto pull requests page
g o
Goto repository settings
g O
Goto repository permissions settings