wonder.js
Version:
34 lines (28 loc) • 2.13 kB
JavaScript
;
var Most = require("most");
var Curry = require("bs-platform/lib/js/curry.js");
var Log$WonderLog = require("wonder-log/lib/js/src/Log.js");
var WorkerService$Wonderjs = require("../../service/primitive/worker/WorkerService.js");
var WorkerJobMainService$Wonderjs = require("../../service/state/main/job/worker/WorkerJobMainService.js");
var StateDataRenderWorker$Wonderjs = require("../../service/state/render_worker/data/StateDataRenderWorker.js");
var WorkerJobHandleSystem$Wonderjs = require("../../job/worker/WorkerJobHandleSystem.js");
var StateRenderWorkerService$Wonderjs = require("../../service/state/render_worker/state/StateRenderWorkerService.js");
var CreateStateRenderWorkerService$Wonderjs = require("../../service/state/render_worker/state/CreateStateRenderWorkerService.js");
function onerrorHandler(msg, fileName, lineno) {
return Log$WonderLog.error(Log$WonderLog.buildErrorMessage("render worker error", "" + (String(msg) + ""), "", "", "fileName:" + (String(fileName) + ("\n lineno:" + (String(lineno) + "")))));
}
function _createAndSetWorkerState(param) {
StateRenderWorkerService$Wonderjs.setState(StateDataRenderWorker$Wonderjs.renderWorkerStateData, CreateStateRenderWorkerService$Wonderjs.createState(/* () */0));
return /* () */0;
}
Most.drain(Most.concatMap((function (e) {
return Most.mergeArray((_createAndSetWorkerState(/* () */0), WorkerJobMainService$Wonderjs.getRenderWorkerJobStreamArr(JSON.parse(e.data.pipelineJobs), JSON.parse(e.data.jobs), /* tuple */[
WorkerJobHandleSystem$Wonderjs.createWorkerJobHandleMap,
WorkerJobHandleSystem$Wonderjs.getWorkerJobHandle
], StateDataRenderWorker$Wonderjs.renderWorkerStateData)));
}), Most.filter((function (e) {
return e.data.operateType === "SEND_JOB_DATA";
}), Most.fromEvent("message", Curry._1(WorkerService$Wonderjs.getSelf, /* () */0)))));
exports.onerrorHandler = onerrorHandler;
exports._createAndSetWorkerState = _createAndSetWorkerState;
/* Not a pure module */