UNPKG

1.99 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3var errors_1 = require("./util/errors");
4var helpers_1 = require("./util/helpers");
5var logger_1 = require("./logger/logger");
6process.on('message', function (msg) {
7 try {
8 var modulePath = "./" + msg.taskModule;
9 var taskWorker = require(modulePath)[msg.taskWorker];
10 taskWorker(msg.context, msg.workerConfig)
11 .then(function (val) {
12 taskResolve(msg.taskModule, msg.taskWorker, val);
13 }, function (val) {
14 taskReject(msg.taskModule, msg.taskWorker, val);
15 })
16 .catch(function (err) {
17 taskError(msg.taskModule, msg.taskWorker, err);
18 });
19 }
20 catch (e) {
21 taskError(msg.taskModule, msg.taskWorker, e);
22 process.exit(1);
23 }
24});
25function taskResolve(taskModule, taskWorker, val) {
26 var msg = {
27 taskModule: taskModule,
28 taskWorker: taskWorker,
29 resolve: val,
30 pid: process.pid
31 };
32 logger_1.Logger.debug("worker resolve, taskModule: " + msg.taskModule + ", pid: " + msg.pid);
33 process.send(msg);
34}
35function taskReject(taskModule, taskWorker, error) {
36 var buildError = new errors_1.BuildError(error.message);
37 var json = helpers_1.buildErrorToJson(buildError);
38 var msg = {
39 taskModule: taskModule,
40 taskWorker: taskWorker,
41 reject: json,
42 pid: process.pid
43 };
44 logger_1.Logger.debug("worker reject, taskModule: " + msg.taskModule + ", pid: " + msg.pid);
45 process.send(msg);
46}
47function taskError(taskModule, taskWorker, error) {
48 var buildError = new errors_1.BuildError(error.message);
49 var json = helpers_1.buildErrorToJson(buildError);
50 var msg = {
51 taskModule: taskModule,
52 taskWorker: taskWorker,
53 error: json,
54 pid: process.pid
55 };
56 logger_1.Logger.debug("worker error, taskModule: " + msg.taskModule + ", pid: " + msg.pid);
57 process.send(msg);
58}