Commit b37e5ae2 authored by project's avatar project

--no commit message

--no commit message
parent f2ba49cd
var async = require('async');
var ctx = require('../../context');
var cfg = ctx.config;
......@@ -73,3 +74,45 @@ JobManager.prototype.setJob = function (prm,cb)
cb('Invalid job config');
}
}
JobManager.prototype.resetTrigger = function (prm,cb)
{
var self = this;
self.job_registry.listJob(function (err,jobs){
if(!jobs){return cb(null);}
async.eachSeries(jobs,function (jobid,callback){
self.job_registry.getJob(jobid,function (err,jobcfg){
if(jobcfg.trigger){
self.trigger_registry.setByJob(jobcfg,callback);
}else{
self.trigger_registry.deleteByJobId(jobcfg.job_id,callback);
}
});
},function (err){
cb(err);
});
});
}
JobManager.prototype.action = function (prm,cb)
{
var self = this;
var action = prm.action;
if(!action){return cb(new Error('Invalid Command'))}
if(!action.cmd){return cb(new Error('Invalid Command'))}
var cmd = action.cmd;
var param = action.param || {};
switch (cmd) {
case 'reset_trigger':
self.resetTrigger(param,cb);
break;
default:
cb(new Error('Invalid Command'));
}
}
......@@ -37,7 +37,7 @@ router.get('/:jid',function (req, res) {
router.delete('/:jid',function (req, res) {
var reqHelper = request.create(req);
var respHelper = response.create(res);
var q = reqHelper.getQuery()
var q = reqHelper.getQuery();
var jid = req.params.jid;
var jm = req.context.jobManager;
var tm = req.context.triggerManager;
......@@ -53,7 +53,7 @@ router.delete('/:jid',function (req, res) {
router.post('/',function (req, res) {
var reqHelper = request.create(req);
var respHelper = response.create(res);
var q = reqHelper.getQuery()
var q = reqHelper.getQuery();
var jm = req.context.jobManager;
var tm = req.context.triggerManager;
......@@ -73,4 +73,26 @@ router.post('/',function (req, res) {
});
router.post('/action',function (req, res) {
var reqHelper = request.create(req);
var respHelper = response.create(res);
var q = reqHelper.getQuery();
var jm = req.context.jobManager;
var tm = req.context.triggerManager;
var action = req.body;
jm.action({'action':action},function(err){
if(err)
{
respHelper.response400(err.message);
}else{
if(q.reload){
tm.reload();
}
respHelper.response201();
}
});
});
module.exports = router;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment