Files
Superalgos/Run.js
T

132 lines
3.5 KiB
JavaScript

global.CURRENT_ENVIRONMENT = "Develop";
global.CURRENT_EXECUTION_AT = "Cloud";
global.SHALL_BOT_STOP = false;
global.USER_LOGGED_IN = "Ciencias";
global.DEV_TEAM = "AAMasters";
global.AT_BREAKPOINT = false; // This is used only when running at the browser.
process.on('uncaughtException', function (err) {
console.log('[INFO] Run -> uncaughtException -> err.message = ' + err.message);
return;
});
process.on('unhandledRejection', (reason, p) => {
console.log('[INFO] Run -> unhandledRejection -> reason = ' + reason);
console.log('[INFO] Run -> unhandledRejection -> p = ' + JSON.stringify(p));
return;
});
process.on('exit', function (code) {
try {
console.log('[INFO] Run -> process.on.exit -> About to exit -> code = ' + code);
return;
}
catch (err) {
console.log("[ERROR] Run -> process.on.exit -> Error Logging Error Code.");
console.log("[ERROR] Run -> process.on.exit -> err.message = " + err.message);
return;
}
});
global.USER_PROFILE = {};
global.EMAIL_CONFIG = {};
readStoragePermissions();
function readStoragePermissions() {
let filePath;
try {
let fs = require('fs');
filePath = '../' + 'User-Profile' + '/' + 'User.Profile.json';
global.USER_PROFILE = JSON.parse(fs.readFileSync(filePath, 'utf8'));
/* Here we will rearrange the storage permissions array into a map, so that it can be easily consumed when needed. */
let permissionsMap = new Map;
for (i = 0; i < global.USER_PROFILE.storagePermissions.length; i++) {
let permission = global.USER_PROFILE.storagePermissions[i];
permissionsMap.set(permission[0], permission[1]);
}
global.USER_PROFILE.storagePermissions = permissionsMap;
readEmailConfiguration();
}
catch (err) {
console.log("[ERROR] readStoragePermissions -> err = " + err.message);
console.log("[HINT] readStoragePermissions -> You need to have a file at this path -> " + filePath);
}
}
function readEmailConfiguration() {
let filePath;
try {
let fs = require('fs');
filePath = '../' + 'Email-Config' + '/' + 'Email.Config.json';
global.EMAIL_CONFIG = JSON.parse(fs.readFileSync(filePath, 'utf8'));
readExchangeAPIKey();
}
catch (err) {
console.log("[ERROR] readEmailConfiguration -> err = " + err.message);
console.log("[HINT] You need to have a file at this path -> " + filePath);
}
}
function readExchangeAPIKey() {
try {
let fs = require('fs');
let filePath = '../' + 'Exchange-Keys' + '/' + 'Secret.Keys' + '.json';
global.EXCHANGE_KEYS = JSON.parse(fs.readFileSync(filePath, 'utf8'));
startRoot();
}
catch (err) {
console.log("[ERROR] readExchangeAPIKey -> err = " + err.message);
console.log("[HINT] You need to have a file at this path -> " + filePath);
global.EXCHANGE_KEYS = {
Poloniex: {
Key: "",
Secret: ""
}
}
startRoot();
}
}
function startRoot() {
const ROOT_DIR = './';
const ROOT_MODULE = require(ROOT_DIR + 'Root');
let root = ROOT_MODULE.newRoot();
let UI_COMMANDS = {
beginDatetime: undefined,
endDatetime: undefined,
timePeriod: undefined,
startMode: undefined,
eventHandler: undefined
};
root.initialize(UI_COMMANDS, onInitialized);
function onInitialized() {
root.start();
}
}