Skip to content
Snippets Groups Projects
Commit 89de72bf authored by wactbprot's avatar wactbprot
Browse files

cal&replicate

parent 79ef1dcd
No related branches found
No related tags found
No related merge requests found
......@@ -79,11 +79,11 @@ var task = function(strdata, cb){
exports.task = task;
/**
* Die Funktion ```task()```
* Die Funktion ```checkdb()```
* liefert das Verbindungsobjekt für die
* list:
* ```
* POST: _list/listname/viewname
* POST: /dbname
* ```
* @method checkdb
* @return ObjectExpression
......@@ -104,6 +104,33 @@ var checkdb = function(cb){
};
exports.checkdb = checkdb;
/**
* Die Funktion ```replicatedb()```
* liefert das Verbindungsobjekt für den
* endpunkt:
* ```
* POST: /_replicate
* ```
* @method replicatedb
* @param callback
*/
var replicatedb = function(cb){
mem.get(["defaults"], function(err, d){
if(!err){
var ddb = conf.database;
cb(null, {hostname:ddb.server,
port: ddb.port,
path: "/_replicate",
method : "POST",
headers: { 'Content-Type': 'application/json; charset=utf-8' }
});
}else{
cb(err);
}
}); // defaults
};
exports.replicatedb= replicatedb;
......
......@@ -50,4 +50,4 @@ module.exports = function (task, cb){
cb(err);
}
}
};
};
\ No newline at end of file
......@@ -26,3 +26,4 @@ exports.checkRelay = require("./worker.checkRelay");
exports.ctrlContainer = require("./worker.ctrlContainer")
exports.updateCd = require("./worker.updateCd");
exports.select = require("./worker.select");
exports.replicateDB = require("./worker.replicateDB");
/**
* @module work.checkDB
*/
var _ = require("underscore")
, bunyan = require("bunyan")
, logStrm = require("bunyan-couchdb-stream")
, conf = require("./conf")
, utils = require("./utils")
, net = require("./net")
, request = require("./request")
, log = bunyan.createLogger({name: conf.app.name + ".worker.replicateDB",
streams: conf.log.streams
})
, ro = {ok: true}
, err;
/**
* Die worker Funktion ```replicateDB()``` repliziert Datenbanken
* @method replicateDB
* @param {Object} task Task-Objekt
* @param {Function} cb Callback Funktion
*/
module.exports = function (task, cb){
var path = task.Path;
if(path && _.isArray(path) ){
var mpid = path[0];
log.trace(ro,
"call function replicateDB");
net.replicatedb(function(err, con){
log.trace(con,
"call connection object for replicateDB");
var wrtdata = {"source":task.SourceDB,"target":task.TargetDB};
log.trace(wrtdata,
"data object for replicateDB");
request.exec(con, task, JSON.stringify(wrtdata), function(err, res){
utils.write_to_exchange(task, res, cb);
}); // exec
}); // net con
}else{
err = new Error("wrong path");
log.error(err
, "path missing or is not an array")
if(_.isFunction (cb)){
cb(err);
}
}
};
......@@ -2,7 +2,7 @@
"author": "wactbprot",
"name": "ssmp",
"description": "server side measurment program",
"version": "0.9.3",
"version": "0.10.3",
"repository": {
"type": "git",
"url": "https://github.com/wactbprot/ssmp"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment