From b8c69bb74ce2a5e837b0f408cb305e23a6f71c7a Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Thu, 8 Mar 2018 17:42:02 +0100 Subject: [PATCH] initializeExchangeAPI debugged --- .vs/AACloudPlatform/v15/.suo | Bin 74240 -> 77312 bytes Context.js | 6 +++++- Datasource.js | 6 +++++- Trading Bot Main Loop.js | 29 ++++++++++++++++++++++------- 4 files changed, 32 insertions(+), 9 deletions(-) diff --git a/.vs/AACloudPlatform/v15/.suo b/.vs/AACloudPlatform/v15/.suo index 049d242be999eb0776f6e4cc93f8ced8ec601fd6..88ddd4ad75f404fb2ca0331b15e5a62cab48cda3 100644 GIT binary patch delta 2541 zcmd6neQZ-z6u{rTeJyKg*#}$KjCOm}jTJVa<70|2>|l<;0&Faj0Rz`47zmECb%YRL z9gG2+n(ZCB5(A@N=N3m~qn7|eWQ#!b4^hCVm=HeHKQtQRACL%<>AC%o5h56k#+&@! zIrrXk?mhRsbFc55?7J$rm67zL5_KaTt-AQAi3Bp1_YT zsw*f{kpx7Kh-4%plM#_PVK3G&qdpZ8frus&7ttc$8Iol9V_;%?`Iu!QMKKHKFkPfb ztP+oM(y(z8>iNl&VZXu19fm7Jt+GRx#R{|2^SSq# zCQ8eb`MtCS8d($oT)Lafz3F8%PLz;19|S*Ez)9oaw(^-iT#2HvVx!t^*y-kXvqn(W zJQvQ=Jnl8WMr@5ZyaU;ZG$GB1ICbRb+m`1f?u(9e#AbM*y@!MxUZN|&p5W#&M}Ub?baeOx#_0h_E6V#%8C1>(XYfzFb3CiOkm1&=x|$ zPHo_6E(Xue1FVifuzxe(ylF3i9plWySAhP?2kx*$lgX84BQf=2@Z#SJITPA_XG2Zt zbl7^TuSstuk;lc#U-y*~eFb)fO9j9ALn$#eM7u)H=Iy?D#Pm_rLC6wZ^b*+v@xEnn zu+@pTCV;-;p%bzIXWvbbYNT~i9X=jhQ8Cm)v|#+>abMfl$;RXSiwC%w`mOJ$&qJIFM;P!2&(-(@LtD3wu!O>RGv|| zje*<05hnSkz=)1o{R`f;>(_eMuC9Z;?i?KH<_iOyszU}@FBNqO(}ztA#s?mY`z8;Y ze7NU6mI2p;*|6e}(SQL-f}+mw);BtJd{<{9HD8V$PO=PML|wch;XP{u0}2@#SgDZj zc_UjzSg#B&R>+mE0mAwz+DwAl&^J^EU0>SyMPJ;1RJev% zLd6sFkIFSjo=~N*FkoW8$Z&N3YCaGs{C^d!Uw*VI;d0N}Czsp_c9lXI%lkKr?iv=I ruG>Q7ZiP^GRTn55P3C~>aOR0MN#sp(Jc%sPKu6642-YYM;iU5Kr(c3e delta 2099 zcmchXe@xVM7{~AV+>h?y4*4aXaKLep@!NwCVqKpY`{!wPOW?PPdqxFZIs|B0Wi9Mh5dq$fz-CCdRbXv>*#?zrm&&XpvdD%I$wUef zPl!cQ$!;e~l{kTHj^d{)R@8~HNr~|rjU!&{xQ!C!L>b{Cb`zCE6{cx71}a{pXa`Y8 zyh79yFB1*erY(aL_@(v}L&M_7`-O1%tAtAm3K!UzesnZRh#-U$f?0euQDF7e#1#lh zL{&D~XvG(Y6GKQM?9*h|5`{`Eq|Krg8q<`7kU$jXl6_Y3#dbo1jYJ+1Tr`n5(Wc3jrqgyXniNR(nNh7*+PAy%-aD2hK9dkOp@DX=!UvX~{*3dFo1 zbPIr&w;6l?wJL(DUgB+$y%$!tZdB^gUhIoxgO1F6`?ZRR@qD`hfQWetZZ7$a1^nq=rfUu+x}7KKkX41>=V zEjyUJf%!Atpv$0={0QvK^7>;K<1Bgw(32U?!?S-=%jFDPUytOGdAC5SED>i!cV)E! z#3b=f2G0Q9e7Q0U@U+>2MW%eZ$T7wOC)a^o$mHjl-)d#tT09SOi$>nbWEYccrOKuH zK(1r5lcA$_JzwASD@ZA`Pkc>&ZYvqq=*XgBY5XFuLf;r`g#9e*JE5hR4cbKxmJTq9Zl%k*N>hV zqkItL-OS$s4A=De(Edg$hI!jfqAQ|R!frvIcgF9giYv`Ad|guoQ_e4Wj~UGLDH1B1 z`AKgT7^*20^Qv*7JMrPs#75lM70J+fQ^&7(^59JmcLT)$%D8Vvl_A;nSrZA?S(A=wtiFAZ!sc)|gPhb`Rl>7sfp26WhZ(ZL-Trq%Ks!;6clJazV`2&&v4Xi;Z}7qED* zlRM`p0C!#+M^Cfy(eJ~U4Rrn+Oozcd54)W-eTIDc9Ifj1)MGS``lUIW4z=pR+B6tPe{&v&e4WV~t`BRm<(EC@ M_SoQ*ddv#!PvIfkMgRZ+ diff --git a/Context.js b/Context.js index 5705fcd62..fd13398b9 100644 --- a/Context.js +++ b/Context.js @@ -1,4 +1,4 @@ -exports.newContext = function newContext(BOT, DEBUG_MODULE, FILE_STORAGE) { +exports.newContext = function newContext(BOT, DEBUG_MODULE, FILE_STORAGE, UTILITIES) { const FULL_LOG = true; @@ -60,6 +60,10 @@ logger.fileName = MODULE_NAME; logger.bot = bot; + /* Utilities needed. */ + + let utilities = UTILITIES.newUtilities(bot); + /* Storage account to be used here. */ let cloudStorage = FILE_STORAGE.newAzureFileStorage(bot); diff --git a/Datasource.js b/Datasource.js index 4f2c9b90e..2b1d598f3 100644 --- a/Datasource.js +++ b/Datasource.js @@ -1,4 +1,4 @@ -exports.newDatasource = function newDatasource(BOT, DEBUG_MODULE, FILE_STORAGE) { +exports.newDatasource = function newDatasource(BOT, DEBUG_MODULE, FILE_STORAGE, UTILITIES) { const FULL_LOG = true; @@ -56,6 +56,10 @@ let oliviaAzureFileStorage = FILE_STORAGE.newAzureFileStorage(bot); let tomAzureFileStorage = FILE_STORAGE.newAzureFileStorage(bot); + /* Utilities needed. */ + + let utilities = UTILITIES.newUtilities(bot); + return thisObject; function initialize(callBackFunction) { diff --git a/Trading Bot Main Loop.js b/Trading Bot Main Loop.js index 223374b7b..eb9d0fd1a 100644 --- a/Trading Bot Main Loop.js +++ b/Trading Bot Main Loop.js @@ -82,7 +82,7 @@ if (FULL_LOG === true) { logger.write("[INFO] run -> loop -> initializeContext -> Entering function."); } - context = CONTEXT.newContext(bot, DEBUG_MODULE, AZURE_FILE_STORAGE); + context = CONTEXT.newContext(bot, DEBUG_MODULE, AZURE_FILE_STORAGE, UTILITIES); context.initialize(onInizialized); function onInizialized(err) { @@ -115,7 +115,7 @@ if (FULL_LOG === true) { logger.write("[INFO] run -> loop -> initializeDatasource -> Entering function."); } - datasource = DATASOURCE.newDatasource(bot, DEBUG_MODULE, AZURE_FILE_STORAGE); + datasource = DATASOURCE.newDatasource(bot, DEBUG_MODULE, AZURE_FILE_STORAGE, UTILITIES); datasource.initialize(onInizialized); function onInizialized(err) { @@ -186,11 +186,26 @@ function onInizialized(err) { - if (err.result === global.DEFAULT_OK_RESPONSE.result) { - initializeUserBot(); - } else { - logger.write("[ERROR] run -> loop -> initializeAssistant -> err = " + err.message); - callBackFunction(err); + switch (err.result) { + case global.DEFAULT_OK_RESPONSE.result: { + logger.write("[INFO] run -> loop -> initializeAssistant -> onInizialized > Execution finished well. :-)"); + initializeUserBot(); + return; + } + break; + case global.DEFAULT_RETRY_RESPONSE.result: { // Something bad happened, but if we retry in a while it might go through the next time. + logger.write("[ERROR] run -> loop -> initializeAssistant -> onInizialized > Retry Later. Requesting Execution Retry."); + nextWaitTime = 'Retry'; + loopControl(nextWaitTime); + return; + } + break; + case global.DEFAULT_FAIL_RESPONSE.result: { // This is an unexpected exception that we do not know how to handle. + logger.write("[ERROR] run -> loop -> initializeAssistant -> onInizialized > Operation Failed. Aborting the process."); + callBackFunction(err); + return; + } + break; } } }