issue #478 - hot-swapping of plugins

This commit is contained in:
Julian Lam
2013-11-03 17:15:18 -05:00
parent e480b1bace
commit 4353a9da25
4 changed files with 66 additions and 40 deletions

25
src/routes/plugins.js Normal file
View File

@@ -0,0 +1,25 @@
var nconf = require('nconf'),
path = require('path'),
fs = require('fs'),
Plugins = require('../plugins'),
PluginRoutes = function(app) {
// Static Assets
app.get('/plugins/:id/*', function(req, res) {
var relPath = req.url.replace('/plugins/' + req.params.id, '');
if (Plugins.staticDirs[req.params.id]) {
var fullPath = path.join(Plugins.staticDirs[req.params.id], relPath);
fs.exists(fullPath, function(exists) {
if (exists) {
res.sendfile(fullPath);
} else {
res.redirect('/404');
}
})
} else {
res.redirect('/404');
}
});
};
module.exports = PluginRoutes;