From b621a05832eedbf83c3a985b828666e91edd72a9 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Mon, 25 Nov 2013 11:40:29 +0000 Subject: [PATCH] feature(files) add readPipe --- lib/server/files.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/lib/server/files.js b/lib/server/files.js index 60372ba8..91630139 100644 --- a/lib/server/files.js +++ b/lib/server/files.js @@ -12,6 +12,7 @@ var main = global.cloudcmd.main, fs = main.fs, path = main.path, + pipe = main.pipe, CloudFunc = main.cloudfunc, Util = main.util; @@ -67,4 +68,30 @@ } }; + object.readPipe = readPipe; + + function readPipe(files, writeStream, callback) { + var name, length = files && files.length; + + if (!length) + Util.exec(callback); + else { + name = files.pop(); + + pipe.create({ + from : name, + write : writeStream, + callback: function(error) { + if (error) + Util.exec(callback, error); + else + if (!length) + Util.exec(callback); + else + readPipe(files, writeStream, callback); + } + }); + } + } + })(this);