From d307f1c028b0f61b61c63b2dc05e714b26b13791 Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Wed, 22 Apr 2020 13:57:49 +0200 Subject: [PATCH] Remote Backends Implemented --- src/DailyFiles.js | 4 ++-- src/FileCursor.js | 21 ++++++++++++++++++++- src/FileSequence.js | 16 +++++++++++++++- src/MarketFiles.js | 16 +++++++++++++++- src/SingleFile.js | 13 ++++++++++++- 5 files changed, 64 insertions(+), 6 deletions(-) diff --git a/src/DailyFiles.js b/src/DailyFiles.js index 356d87f85..55cb27de9 100644 --- a/src/DailyFiles.js +++ b/src/DailyFiles.js @@ -45,7 +45,7 @@ function newDailyFiles () { } } - function initialize (pDataMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pDatetime, pTimeFrame, pHost, pPort, callBackFunction) { + function initialize (pDataMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pDatetime, pTimeFrame, pHost, pPort, pEventsServerClient, callBackFunction) { try { callBackWhenFileReceived = callBackFunction @@ -114,7 +114,7 @@ function newDailyFiles () { if (pDataset.code.validTimeFrames.includes(periodName) === true) { let fileCursor = newFileCursor() fileCursor.eventHandler = thisObject.eventHandler // We share our event handler with each file cursor, so that they can raise events there when files are changed.s - fileCursor.initialize(fileCloud, pDataMine, pBot, pSession, pProduct, pDataset, exchange, pMarket, periodName, periodTime, pDatetime, pTimeFrame, beginDateRange, endDateRange, onInitialized) + fileCursor.initialize(fileCloud, pDataMine, pBot, pSession, pProduct, pDataset, exchange, pMarket, periodName, periodTime, pDatetime, pTimeFrame, beginDateRange, endDateRange, pEventsServerClient, onInitialized) function onInitialized (err) { try { switch (err.result) { diff --git a/src/FileCursor.js b/src/FileCursor.js index 88c1463e1..29ddb900e 100644 --- a/src/FileCursor.js +++ b/src/FileCursor.js @@ -34,6 +34,7 @@ function newFileCursor () { let timeFrame let beginDateRange let endDateRange + let eventsServerClient let finalized = false @@ -61,6 +62,7 @@ function newFileCursor () { timeFrame = undefined beginDateRange = undefined endDateRange = undefined + eventsServerClient = undefined thisObject.files = undefined cursorDate = undefined @@ -73,7 +75,23 @@ function newFileCursor () { } } - function initialize (pFileCloud, pDataMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pPeriodName, pTimeFrame, pCursorDate, pCurrentTimeFrame, pBeginDateRange, pEndDateRange, callBackFunction) { + function initialize ( + pFileCloud, + pDataMine, + pBot, + pSession, + pProduct, + pDataset, + pExchange, + pMarket, + pPeriodName, + pTimeFrame, + pCursorDate, + pCurrentTimeFrame, + pBeginDateRange, + pEndDateRange, + pEventsServerClient, + callBackFunction) { try { market = pMarket exchange = pExchange @@ -88,6 +106,7 @@ function newFileCursor () { timeFrame = pTimeFrame beginDateRange = pBeginDateRange endDateRange = pEndDateRange + eventsServerClient = pEventsServerClient let key = dataMine.code.codeName + '-' + bot.code.codeName + '-' + product.code.codeName + '-' + dataset.code.codeName + '-' + exchange.name + '-' + market.baseAsset + '/' + market.quotedAsset let callerId = key + '-' + periodName + newUniqueId() diff --git a/src/FileSequence.js b/src/FileSequence.js index e9f0f9861..f14de19f4 100644 --- a/src/FileSequence.js +++ b/src/FileSequence.js @@ -32,6 +32,7 @@ function newFileSequence () { let eventSubscriptionIdDatasetUpdated let callerId + let eventsServerClient return thisObject @@ -52,6 +53,7 @@ function newFileSequence () { session = undefined dataset = undefined product = undefined + eventsServerClient = undefined finalized = true } catch (err) { @@ -59,7 +61,18 @@ function newFileSequence () { } } - function initialize (pDataMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pHost, pPort, callBackFunction) { + function initialize ( + pDataMine, + pBot, + pSession, + pProduct, + pDataset, + pExchange, + pMarket, + pHost, + pPort, + pEventsServerClient, + callBackFunction) { try { exchange = pExchange market = pMarket @@ -68,6 +81,7 @@ function newFileSequence () { session = pSession dataset = pDataset product = pProduct + eventsServerClient = pEventsServerClient fileCloud = newFileCloud() fileCloud.initialize(bot, pHost, pPort) diff --git a/src/MarketFiles.js b/src/MarketFiles.js index 5beb8268e..666389d08 100644 --- a/src/MarketFiles.js +++ b/src/MarketFiles.js @@ -37,6 +37,7 @@ function newMarketFiles () { let finalized = false let eventSubscriptionIdDatasetUpdated = [] + let eventsServerClient return thisObject @@ -60,6 +61,7 @@ function newMarketFiles () { dataset = undefined product = undefined periodName = undefined + eventsServerClient = undefined finalized = true } catch (err) { @@ -67,7 +69,18 @@ function newMarketFiles () { } } - function initialize (pDataMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pHost, pPort, callBackFunction) { + function initialize ( + pDataMine, + pBot, + pSession, + pProduct, + pDataset, + pExchange, + pMarket, + pHost, + pPort, + pEventsServerClient, + callBackFunction) { try { exchange = pExchange market = pMarket @@ -76,6 +89,7 @@ function newMarketFiles () { session = pSession dataset = pDataset product = pProduct + eventsServerClient = pEventsServerClient fileCloud = newFileCloud() fileCloud.initialize(pBot, pHost, pPort) diff --git a/src/SingleFile.js b/src/SingleFile.js index 50c4858e7..17d2542de 100644 --- a/src/SingleFile.js +++ b/src/SingleFile.js @@ -16,7 +16,18 @@ function newSingleFile () { return thisObject - function initialize (pDataMine, pBot, pSession, pProduct, pDataset, pExchange, pMarket, pHost, pPort, callBackFunction) { + function initialize ( + pDataMine, + pBot, + pSession, + pProduct, + pDataset, + pExchange, + pMarket, + pHost, + pPort, + pEventsServerClient, + callBackFunction) { try { if (INFO_LOG === true) { logger.write('[INFO] initialize -> Entering function.') } if (INFO_LOG === true) { logger.write('[INFO] initialize -> key = ' + pDataMine.code.codeName + '-' + pBot.code.codeName + '-' + pProduct.code.codeName) }