Skip to content
Snippets Groups Projects
Commit 6d148607 authored by wactbprot's avatar wactbprot
Browse files

anselm worker in case of POST

parent 9ee81653
No related branches found
No related tags found
No related merge requests found
.vscode
coverage/
doc
extensions/frame/
jsdoc/
node_modules/
package-lock.json
\ No newline at end of file
......@@ -17,11 +17,12 @@ var _ = require("underscore")
* @return ObjectExpression
*/
var anselm = function(task, cb){
var con = conf.anselm;
var con = conf.anselm
method = task.Value ? "POST":"GET";
cb(null, { hostname:con.server,
port: con.port,
path: "/" + task.RequestPath,
method : 'GET',
method : method,
headers: {'Content-Type': 'application/json; charset=utf-8' }
});
}
......
......@@ -3,18 +3,22 @@
*
* @module request
*/
var _ = require("underscore")
, bunyan = require("bunyan")
, http = require("http")
, conf = require("./conf")
, utils = require("./utils")
, ctrlstr = conf.ctrlStr
, log = bunyan.createLogger({name: conf.app.name + ".request",
streams: conf.log.streams
})
, ok = {ok:true}
, err;
var _ = require("underscore"),
bunyan = require("bunyan"),
http = require("http"),
conf = require("./conf"),
utils = require("./utils")
,
ctrlstr = conf.ctrlStr,
log = bunyan.createLogger({
name: conf.app.name + ".request",
streams: conf.log.streams
}),
ok = {
ok: true
},
err;
/**
......@@ -28,64 +32,63 @@ var _ = require("underscore")
* @param {Function} cb Callback Funktion
*/
var exec = function (con, task, wrtdata, cb) {
log.trace(ok
, "call to request.exec");
log.trace(ok, "call to request.exec");
var req_cb = function (res) {
res.setEncoding("utf8");
var strdata = "";
log.trace(ok
, "connected with: " + task.TaskName);
log.trace(ok, "connected with: " + task.TaskName);
// response on data
res.on("data", function (d) {
log.trace(ok
, "receive data");
log.trace(ok, "receive data");
strdata = strdata + d;
});
// response on end
res.on("end",function (){
res.on("end", function () {
log.debug(strdata)
log.trace(ok
, "end of request for task: "
+ task.TaskName
+ ", try to parse data");
log.trace(ok, "end of request for task: " +
task.TaskName +
", try to parse data");
var data = JSON.parse(strdata);
if(data._id){
log.trace({ok:true
, id: data._id
, rev: data._rev});
}else{
if(task && !task.NoLog && !data.TaskName){
log.trace({readdata: data,
connection :con,
taskname:task.TaskName}
, "response with data");
if (data._id) {
log.trace({
ok: true,
id: data._id,
rev: data._rev
});
} else {
if (task && !task.NoLog && !data.TaskName) {
log.trace({
readdata: data,
connection: con,
taskname: task.TaskName
}, "response with data");
}
}
if(data.error){
if(task && _.isObject(task.Fallback)){
log.warn({warn: "use fallback"}
,"fallback used for task: "
+ task.TaskName );
if (data.error) {
if (task && _.isObject(task.Fallback)) {
log.warn({
warn: "use fallback"
}, "fallback used for task: " +
task.TaskName);
cb(null, task.Fallback);
}else{
} else {
err = new Error(data.error);
log.error(err
,"data error; no fallback for task: "
+ task.TaskName );
log.error(err, "data error; no fallback for task: " +
task.TaskName);
cb(err);
}
}else{
if(data.warn){
log.warn({warn: data.warn}
,"warning on receiving data");
}else{
log.trace(ok
,"receive data from request");
} else {
if (data.warn) {
log.warn({
warn: data.warn
}, "warning on receiving data");
} else {
log.trace(ok, "receive data from request");
}
cb(null, data);
}
......@@ -96,34 +99,32 @@ var exec = function (con, task, wrtdata, cb) {
}
// response error
var res_err = function (err){
log.error(err
,"response failed");
var res_err = function (err) {
log.error(err, "response failed");
if(task && _.isObject(task.Fallback)){
log.warn({warn: "use fallback"}
, "fallback used" );
if (task && _.isObject(task.Fallback)) {
log.warn({
warn: "use fallback"
}, "fallback used");
cb(null, task.Fallback);
}else{
log.error(err
,"response error; no fallback for task: "
+ task.TaskName );
} else {
log.error(err, "response error; no fallback for task: " +
task.TaskName);
cb(err);
}
}
// request error
var req_err = function (err) {
log.error(err
,"request failed");
if(task && _.isObject(task.Fallback)){
log.warn({warn: "use fallback"}
,"fallback used" );
log.error(err, "request failed");
if (task && _.isObject(task.Fallback)) {
log.warn({
warn: "use fallback"
}, "fallback used");
cb(null, task.Fallback);
}else{
log.error(err
,"request error; no fallback for task: "
+ task.TaskName );
} else {
log.error(err, "request error; no fallback for task: " +
task.TaskName);
cb(err);
}
}
......@@ -132,17 +133,15 @@ var exec = function (con, task, wrtdata, cb) {
var req = http.request(con, req_cb);
// request on error
if(wrtdata){
if(_.isString(wrtdata)){
req.write(wrtdata, function(){
if (wrtdata) {
if (_.isString(wrtdata)) {
req.write(wrtdata, function () {
var data = JSON.parse(wrtdata);
log.trace(ok
, "write data for: " + task.TaskName);
log.trace(ok, "write data for: " + task.TaskName);
});
}else{
} else {
err = new Error("wrong write data");
log.error(err
,"data to write is not a string");
log.error(err, "data to write is not a string");
cb(err);
}
}
......@@ -154,4 +153,4 @@ var exec = function (con, task, wrtdata, cb) {
req.end();
};
exports.exec = exec;
exports.exec = exec;
\ No newline at end of file
/**
* @module work.getList
*/
var _ = require("underscore")
, bunyan = require("bunyan")
, conf = require("./conf")
, utils = require("./utils")
, net = require("./net")
, request = require("./request")
, log = bunyan.createLogger({name: conf.app.name + ".worker.anselm",
streams: conf.log.streams
})
, ro = {ok: true}
, err;
var _ = require("underscore"),
bunyan = require("bunyan"),
conf = require("./conf"),
utils = require("./utils"),
net = require("./net"),
request = require("./request"),
log = bunyan.createLogger({
name: conf.app.name + ".worker.anselm",
streams: conf.log.streams
}),
ro = {
ok: true
},
err;
/**
* Die worker Funktion ```anselm()```
......@@ -23,40 +26,46 @@ var _ = require("underscore")
* @param {Object} task Task-Objekt
* @param {Function} cb Callback Funktion
*/
module.exports = function (task, cb){
var path = task.Path
, reqpath = task.RequestPath
module.exports = function (task, cb) {
var path = task.Path,
reqpath = task.RequestPath,
wrtdata = task.Value ? JSON.stringify(task.Value) : false;
log.trace(ro,
"call function anselm");
log.trace(ro, "call function anselm");
if(path && _.isArray(path) && reqpath && _.isString(reqpath)){
if (path && _.isArray(path) && reqpath && _.isString(reqpath)) {
var mpid = path[0]
net.anselm(task, function(err, con){
log.debug(con)
request.exec(con, task, false, function(err, data){
log.debug(data)
if(!err){
if(data.ids){
utils.write_to_id(task, data, cb);
} else {
utils.write_to_exchange(task, data, cb);
net.anselm(task, function (err, con) {
log.debug(con)
request.exec(con, task, wrtdata, function (err, data) {
log.debug(data)
if (!err) {
if (data.ids) {
utils.write_to_id(task, data, cb);
}
if (data.ToExchange) {
utils.write_to_exchange(task, data, cb);
}
if (data.ok) {
log.trace(ro,"simple pass Result: " + JSON.stringify(data.Result));
if (_.isFunction(cb)) {
cb(null, ro);
}
}else{
log.error(err
, "error in request cb")
if(_.isFunction (cb)){
}
} else {
log.error(err, "error in request cb")
if (_.isFunction(cb)) {
cb(err);
}
}
}); // exec
}); // net con
}else{
} else {
err = new Error("wrong path")
log.error(err
, "path missing or is not an array")
if(_.isFunction (cb)){
log.error(err, "path missing or is not an array")
if (_.isFunction(cb)) {
cb(err);
}
}
};
};
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment