From 1e825698c3feb502d4638b0e2b4613447beac20a Mon Sep 17 00:00:00 2001 From: coderaiser Date: Tue, 18 Mar 2014 07:31:57 -0400 Subject: [PATCH] feature(pipe) getBody: add error handling --- lib/server/pipe.js | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/lib/server/pipe.js b/lib/server/pipe.js index fcea2351..9af75266 100644 --- a/lib/server/pipe.js +++ b/lib/server/pipe.js @@ -12,13 +12,27 @@ '# http://cloudcmd.io' + '\n'); var main = global.cloudcmd.main, - Util = main.util, + Util = require('util.io'), fs = require('fs'), zlib = require('zlib'); + exports.create = create; exports.getBody = getBody; - exports.create = function(params) { + /** + * create pipe + * params: {callback, read or from, write or to, gzip} + * read - readable stream + * write - writable stream + * to - name of file to write + * from - name of file to read + * gzip - should gzip to be used + * callback - function(error) {} + * + * @param params + * @param callback + */ + function create(params) { var gzip, onError, read, write, isFsWrite, p = params; @@ -62,7 +76,7 @@ write.on('open', callback); }); } - }; + } /** * get body of readStream @@ -77,8 +91,12 @@ body += chunk; }); + readStream.on('error', function(error) { + Util.retExec(callback, error); + }); + readStream.on('end', function() { - Util.exec(callback, body); + Util.exec(callback, null, body); }); } })();