TS framework implemented at Task Server

This commit is contained in:
Luis Fernando Molina committed 2020-11-27 11:57:11 +01:00
1 parent ac429d769c
commit a1f1739b69
3 files changed
+86 -21

No files matched your search

+34 -20
View File
@@ -88,51 +88,63 @@ function setupUpTS() {
Here we will setup the TS object, with all the
projects and modules that will have inside.
*/
global.TS = {
TS = {
projects: []
}
for (let i = 0; i < PROJECTS_SCHEMA.length; i++) {
let projectDefinition = PROJECTS_SCHEMA[i]
global.TS.projects[projectDefinition.propertyName] = {}
let projectInstance = global.TS.projects[projectDefinition.propertyName]
TS.projects[projectDefinition.propertyName] = {}
let projectInstance = TS.projects[projectDefinition.propertyName]
projectInstance.utilities = {}
projectInstance.globals = {}
projectInstance.functionLibraries = {}
/* Set up Utilities of this Project */
if (projectDefinition.global.TS.utilities !== undefined) {
for (let j = 0; j < projectDefinition.global.TS.utilities.length; j++) {
let utilityDefinition = projectDefinition.global.TS.utilities[j]
if (projectDefinition.TS.utilities !== undefined) {
for (let j = 0; j < projectDefinition.TS.utilities.length; j++) {
let utilityDefinition = projectDefinition.TS.utilities[j]
let path = process.env.PROJECTS_PATH + '/' + projectDefinition.name + '/' + 'TS' + '/' + 'Utilities' + '/' + utilityDefinition.fileName
projectInstance.utilities[utilityDefinition.propertyName] = eval(utilityDefinition.functionName + '()')
let requiredObject = require(path)
let requiredFunction = requiredObject[utilityDefinition.functionName]
projectInstance.utilities[utilityDefinition.propertyName] = requiredFunction.call()
}
}
/* Set up Globals of this Project */
if (projectDefinition.global.TS.globals !== undefined) {
for (let j = 0; j < projectDefinition.global.TS.globals.length; j++) {
let globalDefinition = projectDefinition.global.TS.globals[j]
if (projectDefinition.TS.globals !== undefined) {
for (let j = 0; j < projectDefinition.TS.globals.length; j++) {
let globalDefinition = projectDefinition.TS.globals[j]
let path = process.env.PROJECTS_PATH + '/' + projectDefinition.name + '/' + 'TS' + '/' + 'Globals' + '/' + globalDefinition.fileName
projectInstance.globals[globalDefinition.propertyName] = eval(globalDefinition.functionName + '()')
let requiredObject = require(path)
let requiredFunction = requiredObject[globalDefinition.functionName]
projectInstance.globals[globalDefinition.propertyName] = requiredFunction.call()
}
}
/* Set up Function Libraries of this Project */
if (projectDefinition.global.TS.functionLibraries !== undefined) {
for (let j = 0; j < projectDefinition.global.TS.functionLibraries.length; j++) {
let functionLibraryDefinition = projectDefinition.global.TS.functionLibraries[j]
if (projectDefinition.TS.functionLibraries !== undefined) {
for (let j = 0; j < projectDefinition.TS.functionLibraries.length; j++) {
let functionLibraryDefinition = projectDefinition.TS.functionLibraries[j]
let path = process.env.PROJECTS_PATH + '/' + projectDefinition.name + '/' + 'TS' + '/' + 'Function-Libraries' + '/' + functionLibraryDefinition.fileName
projectInstance.functionLibraries[functionLibraryDefinition.propertyName] = eval(functionLibraryDefinition.functionName + '()')
let requiredObject = require(path)
let requiredFunction = requiredObject[functionLibraryDefinition.functionName]
projectInstance.functionLibraries[functionLibraryDefinition.propertyName] = requiredFunction.call()
}
}
/* Set up Bot Classes of this Project */
if (projectDefinition.global.TS.botClasses !== undefined) {
for (let j = 0; j < projectDefinition.global.TS.botClasses.length; j++) {
let botClassDefinition = projectDefinition.global.TS.botClasses[j]
if (projectDefinition.TS.botClasses !== undefined) {
for (let j = 0; j < projectDefinition.TS.botClasses.length; j++) {
let botClassDefinition = projectDefinition.TS.botClasses[j]
let path = process.env.PROJECTS_PATH + '/' + projectDefinition.name + '/' + 'TS' + '/' + 'Bot-Classes' + '/' + botClassDefinition.fileName
projectInstance.botClasses[botClassDefinition.propertyName] = eval(botClassDefinition.functionName + '()')
let requiredObject = require(path)
let requiredFunction = requiredObject[botClassDefinition.functionName]
projectInstance.botClasses[botClassDefinition.propertyName] = requiredFunction.call()
}
}
}
@@ -140,6 +152,8 @@ function setupUpTS() {
function bootLoader() {
setupUpTS()
/* Heartbeat sent to the UI */
let key = global.TASK_NODE.name + '-' + global.TASK_NODE.type + '-' + global.TASK_NODE.id
@@ -150,7 +164,7 @@ function bootLoader() {
function taskHearBeat() {
/* The heartbeat event is raised at the event handler of the instance of this task, created at the global.TS. */
/* The heartbeat event is raised at the event handler of the instance of this task, created at the TS. */
let event = {
seconds: (new Date()).getSeconds()
}