From 2802fbd9b438dac2a73285b5c6d9d6293adb16d9 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Tue, 11 Feb 2014 05:05:28 -0500 Subject: [PATCH] feature(rest) add recursiv copy dir (rimraf -> fs-extra) --- lib/server/rest.js | 23 +++++++++++++---------- package.json | 2 +- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/lib/server/rest.js b/lib/server/rest.js index 1e9f5873..9325b406 100644 --- a/lib/server/rest.js +++ b/lib/server/rest.js @@ -24,7 +24,7 @@ dir = main.dir, diff = main.diff, time = main.time, - rimraf = main.require('rimraf'), + fse = main.require('fs-extra'), JSONDIR = main.JSONDIR, OK = 200, sendError = main.sendError, @@ -228,7 +228,7 @@ function onDelete(params, query, callback) { var rmFile = fs.unlink.bind(fs), - rmDir = rimraf || fs.rmdir.bind(fs), + rmDir = fse && fse.remove.bind(fse) || fs.rmdir.bind(fs), p = params; if (query === 'dir') @@ -358,7 +358,7 @@ * @param pParams {command, method, body, requrest, response} */ function onPUT(pParams) { - var name, data, json, config, + var name, data, json, config, callback, ret = main.checkParams(pParams, ['body']); if (ret) { @@ -389,18 +389,21 @@ break; case 'cp': - if (!Util.checkObjTrue(lFiles, ['from', 'to'])) + callback = function(error) { + checkSendError(error, pParams, function() { + sendMsg(pParams, 'copy', lFiles.to); + }); + }; + + if (!Util.checkObjTrue(lFiles, ['from', 'to'])) sendError(pParams, p.data); + else if (fse) + fse.copy(lFiles.from, lFiles.to, callback); else pipe.create({ from : lFiles.from, to : lFiles.to, - callback : function(pError) { - if (pError) - sendError(pParams, pError); - else - sendMsg(pParams, 'copy', lFiles.to); - } + callback : callback }); break; diff --git a/package.json b/package.json index 0588d123..58e43f94 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "socket.io": "0.9.16", "express": "3.4.x", "http-auth": "2.1.x", - "rimraf": "2.2.x" + "fs-extra": "0.8.x" }, "license": "MIT", "engines": {