diff --git a/CloudVM/CloudRequire.js b/CloudVM/CloudRequire.js
new file mode 100644
index 000000000..871c0adee
--- /dev/null
+++ b/CloudVM/CloudRequire.js
@@ -0,0 +1,68 @@
+function newCloudRequire(BOT, DEBUG_MODULE) {
+
+ const FULL_LOG = true;
+ const LOG_FILE_CONTENT = false;
+
+ const MODULE_NAME = "Cloud Require";
+
+ let bot = BOT;
+
+ const logger = DEBUG_MODULE.newDebugLog();
+ logger.bot = bot;
+ logger.fileName = MODULE_NAME;
+ logger.initialize();
+
+ let thisObject = {
+ requireBot: requireBot,
+ requireCommons: requireCommons
+ };
+
+ return thisObject;
+
+ function requireBot(pCloudStorage, pProcessConfig, callBackFunction) {
+
+ try {
+
+ if (FULL_LOG === true) { logger.write("[INFO] requireBot -> Entering function."); }
+
+ let filePath = "Bots" + "/" + bot.devTeam + "/" + bot.repo + "/" + pProcessConfig.name + "/" + "User.Bot.js";
+
+ downloadModule(filePath, onDownloaded)
+
+ function onDownloaded(pModule) {
+
+ callBackFunction(global.DEFAULT_OK_RESPONSE, pModule);
+ return;
+
+ }
+
+ } catch (err) {
+ logger.write("[ERROR] requireBot -> err = " + err.message);
+ callBackFunction(global.DEFAULT_FAIL_RESPONSE);
+ }
+ }
+
+ function requireCommons(pCloudStorage, callBackFunction) {
+
+ try {
+
+ if (FULL_LOG === true) { logger.write("[INFO] requireCommons -> Entering function."); }
+
+ let filePath = bot.devTeam + "/" + bot.repo + "/" + "Commons.js";
+
+ downloadModule(filePath, onDownloaded)
+
+ function onDownloaded(pModule) {
+
+ callBackFunction(global.DEFAULT_OK_RESPONSE, pModule);
+ return;
+
+ }
+
+ } catch (err) {
+ logger.write("[ERROR] requireCommons -> err = " + err.message);
+ callBackFunction(global.DEFAULT_FAIL_RESPONSE);
+ }
+ }
+
+};
\ No newline at end of file
diff --git a/CloudVM/CloudSupport.js b/CloudVM/CloudSupport.js
index abd9f3f5c..c5953fce5 100644
--- a/CloudVM/CloudSupport.js
+++ b/CloudVM/CloudSupport.js
@@ -128,20 +128,30 @@ function webRequire(pModulePath) {
MODULE.newDataDependencies = newDataDependencies;
return MODULE;
}
+ case './CloudRequire': {
+
+ let MODULE = {};
+ MODULE.newCloudRequire = newCloudRequire;
+ return MODULE;
+ }
default: {
console.log(pModulePath + " not found. ");
}
}
}
-function downloadModule(pPath) {
+function downloadModule(pPath, callBackFunction) {
/* We will need this to load individual bots modules. */
- Requirejs(["Scripts/DummyWeb"], function (DummyWeb) {
- console.log("Dummy Web Loaded");
- });
+ Requirejs([pPath], onRequired);
+ function onRequired(pModule) {
+
+ console.log(pPath + " downloaded.");
+
+ callBackFunction(pModule);
+ }
}
diff --git a/Project.njsproj b/Project.njsproj
index 00558fbec..7c8d10615 100644
--- a/Project.njsproj
+++ b/Project.njsproj
@@ -32,6 +32,9 @@
+
+ Code
+
Code