From 960a8e68076b380141fad5974677b8fc6897f0c0 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Thu, 6 Feb 2014 04:43:30 -0500 Subject: [PATCH] feature(rest) add ability to remove directory with files --- lib/server/rest.js | 13 ++++++++----- package.json | 3 ++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/server/rest.js b/lib/server/rest.js index 5a3656b8..8d89c3c1 100644 --- a/lib/server/rest.js +++ b/lib/server/rest.js @@ -24,6 +24,7 @@ dir = main.dir, diff = main.diff, time = main.time, + rimraf = main.require('rimraf'), JSONDIR = main.JSONDIR, OK = 200, sendError = main.sendError, @@ -219,10 +220,12 @@ } function onDelete(params, query, callback) { - var p = params; + var rmFile = fs.unlink.bind(fs), + rmDir = rimraf || fs.rmdir.bind(fs), + p = params; if (query === 'dir') - fs.rmdir(p.name, function(error) { + rmDir(p.name, function(error) { Util.exec(callback, error, p.name); }); else if (query === 'files') @@ -241,10 +244,10 @@ Util.exec(callback, error); else { if (stat.isDirectory()) - fs.rmdir(name, log); + rmDir(name, log); else if (stat.isFile()) - fs.unlink(name, log); + rmFile(name, log); if (assync === n) Util.exec(callback, null, body); @@ -260,7 +263,7 @@ } }); else - fs.unlink(p.name, function(error) { + rmFile(p.name, function(error) { Util.exec(callback, error, p.name); }); } diff --git a/package.json b/package.json index 09556e98..0588d123 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,8 @@ "minify": "0.2.4", "socket.io": "0.9.16", "express": "3.4.x", - "http-auth": "2.1.x" + "http-auth": "2.1.x", + "rimraf": "2.2.x" }, "license": "MIT", "engines": {