38 lines
646 B
JavaScript
38 lines
646 B
JavaScript
const utils = require('j7/utils');
|
|
|
|
const tasks = {};
|
|
|
|
function add(clsNames, modName) {
|
|
const modClass = require('./' + modName);
|
|
clsNames.forEach((clsName) => {
|
|
tasks[clsName] = {
|
|
'clsName': clsName,
|
|
'modName': modName,
|
|
'class': modClass
|
|
};
|
|
});
|
|
}
|
|
|
|
async function init() {
|
|
add(['BcSpider'], 'bcspider');
|
|
const initTasks = [
|
|
'BcSpider'
|
|
];
|
|
await utils.serial(
|
|
[
|
|
'BcSpider'
|
|
],
|
|
async (name) =>
|
|
{
|
|
const task = create(name);
|
|
await task.init();
|
|
});
|
|
}
|
|
|
|
function create(name) {
|
|
const module = tasks[name];
|
|
return new module['class']();
|
|
}
|
|
|
|
exports.init = init;
|