File: routes/api.js
/**
@module Tracker
@class Controller
@This class is acting as controller module which will dispatch request to specific module after processing some security check.
*/
exports.controller = function( req,res)
{
/** API Watchman implementation
@method Controller
*/
var ApiFunctions = require('./lib/api/apiFunctions').ApiFunctions;
try{
//mandatory checking.
var mandatoryFields = ApiFunctions[req.params.method].mandatoryFields;
for (var i in mandatoryFields){
if( ! req.param(mandatoryFields[i]) )
throw new Error('Required fields are not persent'+ mandatoryFields[i]);
}
//dispatching request to api method.
ApiFunctions[req.params.method].method(req,res);
}
catch(e)
{
res.end( '{error:"' + e+'"}');
}
};