diff --git a/BuildServer/lib/tasks/conditional.js b/BuildServer/lib/tasks/conditional.js index 9852c24..2148f2e 100644 --- a/BuildServer/lib/tasks/conditional.js +++ b/BuildServer/lib/tasks/conditional.js @@ -11,9 +11,7 @@ module.exports = function (params, processor) { return processor.done(); } - processor.processTask(params.task, function () { - processor.done(); - }); + processor.processTask(params.task, processor.done.bind(processor)); } }; }; diff --git a/BuildServer/lib/tasks/sequential.js b/BuildServer/lib/tasks/sequential.js new file mode 100644 index 0000000..c1b6cb0 --- /dev/null +++ b/BuildServer/lib/tasks/sequential.js @@ -0,0 +1,22 @@ +"use strict"; + +var async = require("async"); + +var series = function (tasks, callback) { + console.log("arguments:"); + console.log(arguments); + console.log("first task:"); + console.log(tasks[0]); + tasks[0]("xxx"); + console.log("executed tasks[0]"); + async.series(tasks, callback); +} + +module.exports = function (params, processor) { + var mapper = Function.bind.bind(processor.processTask, processor); + return { + process: function () { + async.series(params.tasks.map(function (element) { return mapper(element); }), processor.done.bind(processor)); + } + }; +};