From 1d00aaf6d281b4e8478edd11d067ceb8ec2a085f Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Thu, 8 Mar 2018 09:47:29 +0100 Subject: [PATCH] Exchange and Market as global variables. --- .vs/AACloudPlatform/v15/.suo | Bin 74752 -> 67072 bytes Assistant.js | 11 ++--------- Context.js | 16 ++++++++-------- Datasource.js | 20 ++++++++++++++------ ExchangeAPI.js | 2 +- Run.js | 17 +++++++++++++++-- 6 files changed, 40 insertions(+), 26 deletions(-) diff --git a/.vs/AACloudPlatform/v15/.suo b/.vs/AACloudPlatform/v15/.suo index 262877a6a71acd0a9c54f86caba1d32d0e010357..f978ceb32b146aa8133e4125a786c0f495de70d3 100644 GIT binary patch delta 2599 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 onDone -> Execution finished well. :-)"); callBackFunction(global.DEFAULT_OK_RESPONSE); return; } @@ -140,7 +139,7 @@ if (FULL_LOG === true) { logger.write("[INFO] initialize -> getStatusReport -> Entering function."); } let fileName = "Status.Report.json" - let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Processes/" + bot.process + "/" + EXCHANGE_NAME; + let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Processes/" + bot.process + "/" + global.EXCHANGE_NAME; cloudStorage.getTextFile(filePath, fileName, onFileReceived); @@ -194,7 +193,7 @@ if (FULL_LOG === true) { logger.write("[INFO] initialize -> getExecutionHistory -> Entering function."); } let fileName = "Execution.History.json" - let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + EXCHANGE_NAME; + let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + global.EXCHANGE_NAME; cloudStorage.getTextFile(filePath, fileName, onFileReceived); @@ -245,7 +244,7 @@ let fileName = "Execution.Context.json" let dateForPath = date.getUTCFullYear() + '/' + utilities.pad(date.getUTCMonth() + 1, 2) + '/' + utilities.pad(date.getUTCDate(), 2) + '/' + utilities.pad(date.getUTCHours(), 2) + '/' + utilities.pad(date.getUTCMinutes(), 2); - let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + EXCHANGE_NAME + "/" + dateForPath; + let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + global.EXCHANGE_NAME + "/" + dateForPath; cloudStorage.getTextFile(filePath, fileName, onFileReceived); @@ -339,6 +338,7 @@ switch (err.result) { case global.DEFAULT_OK_RESPONSE.result: { + logger.write("[INFO] initialize -> onDone -> Execution finished well. :-)"); callBackFunction(global.DEFAULT_OK_RESPONSE); return; } @@ -373,7 +373,7 @@ let fileName = "Execution.Context.json" let dateForPath = processDatetime.getUTCFullYear() + '/' + utilities.pad(processDatetime.getUTCMonth() + 1, 2) + '/' + utilities.pad(processDatetime.getUTCDate(), 2) + '/' + utilities.pad(processDatetime.getUTCHours(), 2) + '/' + utilities.pad(processDatetime.getUTCMinutes(), 2); - let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + EXCHANGE_NAME + "/" + dateForPath; + let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + global.EXCHANGE_NAME + "/" + dateForPath; utilities.createFolderIfNeeded(filePath, cloudStorage, onFolderCreated); @@ -428,7 +428,7 @@ try { let fileName = "Execution.History.json" - let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + EXCHANGE_NAME; + let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Output/" + bot.process + "/" + global.EXCHANGE_NAME; utilities.createFolderIfNeeded(filePath, cloudStorage, onFolderCreated); @@ -493,7 +493,7 @@ try { let fileName = "Status.Report.json" - let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Processes/" + bot.process + "/" + EXCHANGE_NAME; + let filePath = bot.devTeam + "/" + bot.codeName + "/" + bot.version + "/" + bot.dataSetVersion + "/Processes/" + bot.process + "/" + global.EXCHANGE_NAME; utilities.createFolderIfNeeded(filePath, cloudStorage, onFolderCreated); diff --git a/Datasource.js b/Datasource.js index 40f23674a..def11fc87 100644 --- a/Datasource.js +++ b/Datasource.js @@ -99,6 +99,7 @@ switch (err.result) { case global.DEFAULT_OK_RESPONSE.result: { + logger.write("[INFO] initialize -> onDone -> Execution finished well. :-)"); callBackFunction(global.DEFAULT_OK_RESPONSE); return; } @@ -400,12 +401,19 @@ } } - function getFile(pFileService, pFileName, pFilePath, pPeriodName, pDatetime, innerCallBack, outerCallBack) { - try { - pFileName = pFileName.replace("@AssetA", market.assetA); - pFileName = pFileName.replace("@AssetB", market.assetB); + function getFile(pFileStorage, pFileName, pFilePath, pPeriodName, pDatetime, innerCallBack, outerCallBack) { - pFilePath = pFilePath.replace("@Exchange", EXCHANGE_NAME); + try { + if (FULL_LOG === true) { logger.write("[INFO] initialize -> getFile -> Entering function."); } + if (FULL_LOG === true) { logger.write("[INFO] initialize -> getFile -> pFileName = " + pFileName); } + if (FULL_LOG === true) { logger.write("[INFO] initialize -> getFile -> pFilePath = " + pFilePath); } + if (FULL_LOG === true) { logger.write("[INFO] initialize -> getFile -> pPeriodName = " + pPeriodName); } + if (FULL_LOG === true) { logger.write("[INFO] initialize -> getFile -> pDatetime = " + pDatetime); } + + pFileName = pFileName.replace("@AssetA", MARKET.assetA); + pFileName = pFileName.replace("@AssetB", MARKET.assetB); + + pFilePath = pFilePath.replace("@Exchange", global.EXCHANGE_NAME); pFilePath = pFilePath.replace("@Period", pPeriodName); if (pDatetime !== undefined) { @@ -416,7 +424,7 @@ } - pFileService.getTextFile(pFilePath, pFileName, onFileReceived); + pFileStorage.getTextFile(pFilePath, pFileName, onFileReceived); function onFileReceived(err, text) { diff --git a/ExchangeAPI.js b/ExchangeAPI.js index c2ac09e49..377d1ecc7 100644 --- a/ExchangeAPI.js +++ b/ExchangeAPI.js @@ -43,7 +43,7 @@ try { let fs = require('fs'); - let filePath = '../' + 'API-Keys' + '/' + bot.codeName + '.' + EXCHANGE_NAME + '.json'; + let filePath = '../' + 'API-Keys' + '/' + bot.codeName + '.' + global.EXCHANGE_NAME + '.json'; return JSON.parse(fs.readFileSync(filePath, 'utf8')); } catch (err) { diff --git a/Run.js b/Run.js index d596fb612..7097f8ece 100644 --- a/Run.js +++ b/Run.js @@ -66,21 +66,34 @@ process.on('exit', function (code) { logger.write('About to exit with code:' + code); }); +/* Global constants definitions. */ + +/* Callbacks default responses. */ + global.DEFAULT_OK_RESPONSE = { result: "Ok", message: "Operation Succeeded" }; -global.global.DEFAULT_FAIL_RESPONSE = { +global.DEFAULT_FAIL_RESPONSE = { result: "Fail", message: "Operation Failed" }; -global.global.DEFAULT_RETRY_RESPONSE = { +global.DEFAULT_RETRY_RESPONSE = { result: "Retry", message: "Retry Later" }; +/* Current state of the art fixed parameters */ + +global.MARKET = { + assetA: "USDT", + assetB: "BTC", +}; + +global.EXCHANGE_NAME = "Poloniex"; + const START_ALL_MONTHS = false;