Page MenuHomeSealhub

No OneTemporary

diff --git a/bin/index.js b/bin/index.js
index a59ff346..f2bc9785 100644
--- a/bin/index.js
+++ b/bin/index.js
@@ -1,11 +1,11 @@
require("prometheus-exception-handler");
var core = require("prometheus-core");
var LayerManager = require("prometheus-layer-manager");
var db_layer = require("prometheus-database-layer");
-if(LayerManager.validate()){
+if(LayerManager.isValid()){
core.bootstrap();
LayerManager.init();
} else {
console.log("ERR: Unknown command or layer name.")
}
diff --git a/bin/node_modules/prometheus-core/prometheus-core.js b/bin/node_modules/prometheus-core/prometheus-core.js
index 2cfae9dd..9b9ae7c6 100644
--- a/bin/node_modules/prometheus-core/prometheus-core.js
+++ b/bin/node_modules/prometheus-core/prometheus-core.js
@@ -1,65 +1,64 @@
var fs = require("fs");
var path = require('path')
var Set = require('Set');
//var Channel = require('prometheus-channel')
-var Modules = null;// dependency injected later on
-
var channels = {};
var channel_info = {};
var services = {};
var service_info = {};
var registred_chips = new Set();
var Core = new function(){
this.registerChip = function(chip_name){
registred_chips.add(chip_name);
}
function collect_module_settings(){
var modules_dir = path.resolve(module.filename, "../../../prometheus-modules");
var modules_dir_contents = fs.readdirSync(modules_dir);
for(var i in modules_dir_contents){
var current_module_path = path.resolve(modules_dir, modules_dir_contents[i]);
Modules.loadPath(current_module_path);
}
}
this.bootstrap = function(){
collect_module_settings();
}
this.registerChannel = function(id, info, body){
channel_info[id] = info;
channels[id] = body;
}
this.registerService = function(id, info, body){
service_info[id] = info;
services[id] = body;
}
this.chipIsRegistred = function(chip_name){
return registred_chips.has(chip_name);
}
this.getChannel = function(id){
return channels[id];
}
this.getService = function(id){
return services[id] || null;
}
this.getServices = function(){
return services;
}
}
+
module.exports = Core;
//!!important! export Core before importning Modules (circular dependency fail)
Modules = require("prometheus-module-manager");
diff --git a/bin/node_modules/prometheus-database-accessor/database-accessor.js b/bin/node_modules/prometheus-database-accessor/database-accessor.js
index 4a998a33..3b0b53af 100644
--- a/bin/node_modules/prometheus-database-accessor/database-accessor.js
+++ b/bin/node_modules/prometheus-database-accessor/database-accessor.js
@@ -1,142 +1,142 @@
/**
* Provides access to the database
* @module database-accessor
*/
var Promise = require("bluebird");
var request = require("request");
var queryString = require("query-string");
var LayerManager = require("prometheus-layer-manager");
var config = require("prometheus-config");
var db_rest_api_client = new function(){
this.init = function(){
//server_configuration = LayerManager.getDBLayerLocation();
}
function generateUrl(){
var remote_settings = config.db_layer_config;
return "http://" + remote_settings.host + ":" + remote_settings.port;
}
this.query = function(collection_name, mode, query, options, output_options){
output_options = output_options || {};
return new Promise(function(resolve, reject){
if(mode=="find"){
var url = generateUrl() + "/api/rest/v1/" + collection_name + "/";
var query_string = queryString.stringify({
mode: mode,
query: JSON.stringify(query),
options: JSON.stringify(options),
output_options: JSON.stringify(output_options)
});
var entire_url = url+"?"+query_string
request.get(entire_url, function(err, res, body){
if(err){
throw new Error(err);
reject(err);
}else{
resolve(JSON.parse(body));
}
})
}
if(mode=="insert"){
var url = generateUrl() + "/api/rest/v1/" + collection_name + "/";
var payload = {
mode: "insert",
query: query,
options: options
};
var payload_string = JSON.stringify(payload);
request.post(url, {form:{json_encoded_payload:payload_string}}, function(err, res, body){
if(err){
throw new Error(err);
reject(err);
}else{
resolve(JSON.parse(body));
}
})
}
if(mode=="update"){
var url = generateUrl() + "/api/rest/v1/" + collection_name + "/";
var payload = {
mode: "update",
query: query,
options: options
};
var payload_string = JSON.stringify(payload);
request.put(url, {form:{json_encoded_payload:payload_string}}, function(err, res, body){
if(err){
throw new Error(err);
reject(err);
}else{
resolve(JSON.parse(body));
}
})
}
})
}
}
var db_lpc_api_client = new function(){
var server = null;
this.init = function(){
server = require("prometheus-database-layer").getServer();
this.query = server.query;
}
}
function lpc_api_needed(){
if(LayerManager.isLocal()){
return true;
}else{
if(LayerManager.getLayer()=="web"){
return false
}else{
return true;
}
}
}
function rest_api_needed(){
if(LayerManager.isLocal()){
return false;
}else{
if(LayerManager.getLayer()=="biz"){
return true;
}else{
return false;
}
}
}
-if(LayerManager.validate()){
+if(LayerManager.isValid()){
if(rest_api_needed()){
module.exports = db_rest_api_client;
}else{
if(lpc_api_needed()){
db_lpc_api_client.init();
module.exports = db_lpc_api_client;
}
}
}
diff --git a/bin/node_modules/prometheus-database-layer/database-layer.js b/bin/node_modules/prometheus-database-layer/database-layer.js
index f2a0bdbf..816c359e 100644
--- a/bin/node_modules/prometheus-database-layer/database-layer.js
+++ b/bin/node_modules/prometheus-database-layer/database-layer.js
@@ -1,113 +1,113 @@
var Promise = require("bluebird");
var LayerManager = require("prometheus-layer-manager");
function allow_query(){
if(LayerManager.isLocal()){
return true;
}else{
if(LayerManager.layer=="web"){
return false;
}else{
return true;
}
}
}
function db_server_setup_needed(){
if(LayerManager.isLocal()){
return true;
}else{
if(LayerManager.getLayer()=="db"){
return true;
}else{
return false;
}
}
}
function rest_server_needed(){
if(LayerManager.isLocal()){
return false;
}else{
if(LayerManager.getLayer()=="db"){
return true;
}else{
return false;
}
}
}
var server = null;
module.exports.initialized = false;
function init(){
if(db_server_setup_needed()){
server = require("./database-server.js");
//server.init();
}
module.exports.initialized = true;
}
/*
module.exports.query = function(collection, mode, query){
return new Promise(function(resolve, reject){
return server.query(collection_name, mode, query, options);
});
}
*/
module.exports.getServer = function(){
if(!module.exports.initialized){
init();
}
return server;
}
module.exports.init = function(){
init();
}
function init_needed(){
if(LayerManager.isLocal()){
return true;
}else{
if(LayerManager.getLayer()=="web"){
return false;
}else{
return true;
}
}
}
function rest_server_needed(){
if(LayerManager.isLocal()){
return false;
}else{
if(LayerManager.getLayer()=="db"){
return true;
}else{
return false;
}
}
}
-if(LayerManager.validate()){
+if(LayerManager.isValid()){
if(rest_server_needed()){
var rest_server = require("./database-rest-server.js");
rest_server.start(function(){
console.log("Database REST server started:", rest_server.info.uri);
});
}
if(init_needed()){
init();
}
}
var DatabaseAccess = require("prometheus-database-accessor");
\ No newline at end of file
diff --git a/bin/node_modules/prometheus-layer-manager/layer-manager.js b/bin/node_modules/prometheus-layer-manager/layer-manager.js
index f6063f8b..55c2d2e1 100644
--- a/bin/node_modules/prometheus-layer-manager/layer-manager.js
+++ b/bin/node_modules/prometheus-layer-manager/layer-manager.js
@@ -1,70 +1,86 @@
var simpleargs = require("simpleargs");
var Modules = require("prometheus-module-manager");
var LayerManager = new function(){
this.mode = null;
+ var stateLocal = null;
+ var l_argument = null;
+ var layerName = null;
+ var isValid = null;
this.isLocal = function(){
- var l_argument = simpleargs(process.argv.slice(2))["l"]
- return l_argument==="local" || l_argument===null || l_argument==undefined;
+ return stateLocal;
}
this.getLayer = function(){
- var l_argument = simpleargs(process.argv.slice(2))["l"]
- if(!l_argument){
- return null;
- }else{
- return l_argument;
- }
+ return layerName;
}
- this.validate = function(){
- if(process.argv.length > 3) {
- var arg = process.argv[3];
- if(typeof(arg) === 'undefined' || arg === null || (arg!="web" && arg!="biz" && arg != "db") || process.argv.length > 4) {
- return false;
- }
- }
- return true;
+ this.isValid = function(){
+ return isValid;
}
this.init = function(){
- var l_argument = simpleargs(process.argv.slice(2))["l"]
- this.mode = l_argument? l_argument : "local";
+ this.mode = l_argument || "local";
if(this.isLocal()){
for(var i in layers){
layers[i].init();
}
Modules.execute_modules(["services", "channels"]);
}else{
switch(this.getLayer()){
case "db":
db_layer.init();
break;
case "biz":
biz_layer.init();
Modules.execute_modules(["services"]);
break;
case "web":
web_layer.init();
Modules.execute_modules(["channels"]);
break;
}
}
return false;
}
+ var checkLocal = function(){
+ l_argument = simpleargs(process.argv.slice(2))["l"];
+ stateLocal = l_argument==="local" || l_argument===null || l_argument==undefined;
+ }
+ var checkLayer = function(){
+ if(!l_argument){
+ layerName = null;
+ }else{
+ layerName = l_argument;
+ }
+ }
+ var checkValidation = function(){
+ if(process.argv.length > 3) {
+ var arg = process.argv[3];
+ if(typeof(arg) === 'undefined' || arg === null || (arg!="web" && arg!="biz" && arg != "db")) {
+ isValid = false;
+ }
+
+ }
+ isValid = true;
+ }
+
+ checkLocal();
+ checkLayer();
+ checkValidation();
}
module.exports = LayerManager;
var web_layer = require("prometheus-web-layer");
var biz_layer = require("prometheus-business-layer");
var db_layer = require("prometheus-database-layer");
var layers = {
"db": db_layer,
"web": web_layer,
"biz": biz_layer,
}
\ No newline at end of file

File Metadata

Mime Type
text/x-diff
Expires
Sat, Nov 8, 01:21 (3 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1033090
Default Alt Text
(10 KB)

Event Timeline