xmt-base
Version:
Backend Server Framework of XmT Inc.
31 lines • 994 B
JavaScript
;
function schedule(runList, request, response) {
if (!Array.isArray(runList) || runList.length < 1
|| !request || !response) {
return;
}
let nextTaskIndex = 0;
(function nextTask(error) {
if (error) {
console.error("Schedule error happen... : " + error);
response.statusCode = 500;
response.end();
return;
}
if (nextTaskIndex < runList.length) {
process.nextTick(() => {
try {
runList[nextTaskIndex++](request, response, nextTask);
}
catch (error) {
console.error("Unhandled app logic error happen... : " + error);
response.statusCode = 500;
response.end();
return;
}
});
}
})();
}
exports.schedule = schedule;
//# sourceMappingURL=schedule.js.map