Browse Source

Merge pull request #42 from pbca26/master

added shepherd api groom get/post
all-modes
Satinder Grewal 8 years ago
committed by GitHub
parent
commit
74f7f89cba
  1. 87
      routes/shepherd.js

87
routes/shepherd.js

@ -143,6 +143,93 @@ shepherd.get('/cache', function(req, res, next) {
}
});
/*
* params: filename
*/
shepherd.get('/groom', function(req, res, next) {
var _filename = req.query.filename;
if (_filename) {
if (fs.existsSync(iguanaDir + '/shepherd/data-' + _filename + '.json')) {
fs.readFile(iguanaDir + '/shepherd/data-' + _filename + '.json', 'utf8', function (err, data) {
if (err) {
var errorObj = {
'msg': 'error',
'result': err
};
res.end(JSON.stringify(errorObj));
} else {
var successObj = {
'msg': 'success',
'result': data ? JSON.parse(data) : ''
};
res.end(JSON.stringify(successObj));
}
});
} else {
var errorObj = {
'msg': 'error',
'result': 'no file with name ' + _filename
};
res.end(JSON.stringify(errorObj));
}
} else {
var errorObj = {
'msg': 'error',
'result': 'no file name provided'
};
res.end(JSON.stringify(errorObj));
}
});
/*
* params: filename, payload
*/
shepherd.post('/groom', function(req, res) {
var _filename = req.body.filename,
_payload = req.body.payload;
if (_filename) {
if (!_payload) {
var errorObj = {
'msg': 'error',
'result': 'no payload provided'
};
res.end(JSON.stringify(errorObj));
} else {
fs.writeFile(iguanaDir + '/shepherd/data-' + _filename + '.json', _payload, function (err) {
if (err) {
var errorObj = {
'msg': 'error',
'result': err
};
res.end(JSON.stringify(errorObj));
} else {
var successObj = {
'msg': 'success',
'result': 'done'
};
res.end(JSON.stringify(successObj));
}
});
}
} else {
var errorObj = {
'msg': 'error',
'result': 'no file name provided'
};
res.end(JSON.stringify(errorObj));
}
});
var cacheCallInProgress = false,
cacheGlobLifetime = 300; // sec

Loading…
Cancel
Save