UNPKG

mp-holistic

Version:

si prefigge l'umile compito di aiutare nella creazione di : - un server API REST mediante express - un semplice ORM per Postgres Questo tramite decoratori o classi particolari.

155 lines 7.34 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.MetodoVettori = void 0; const utility_1 = require("../utility/utility"); const fs_1 = __importDefault(require("fs")); class MetodoVettori { constructor() { this.listaHtml = []; } Init(init) { if (init.nomiClasseRiferimento != undefined) this.nomiClasseRiferimento = init.nomiClasseRiferimento; if (init.ListaSanificatori) this.ListaSanificatori = init.ListaSanificatori; if (init.RisposteDiControllo) this.RisposteDiControllo = init.RisposteDiControllo; if (init.listaHtml) { for (let index = 0; index < init.listaHtml.length; index++) { const element = init.listaHtml[index]; if (element.percorsoIndipendente == undefined) element.percorsoIndipendente = false; if (element.html != undefined && element.htmlPath == undefined && this.listaHtml.find(x => { if (x.path == element.path) return true; else return false; }) == undefined) { this.listaHtml.push({ contenuto: element.html, path: element.path, percorsoIndipendente: element.percorsoIndipendente }); // this.listaHtml?.contenuto = element.html; } else if (element.html == undefined && element.htmlPath != undefined && this.listaHtml.find(x => { if (x.path == element.path) return true; else return false; }) == undefined) { this.listaHtml.push({ contenuto: fs_1.default.readFileSync(element.htmlPath).toString(), path: element.path, percorsoIndipendente: element.percorsoIndipendente }); // this.listaHtml?.contenuto = fs.readFileSync(element.htmlPath).toString(); } } } } CercaRispostaConTrigger(richiesta) { let tmp = undefined; if (this.RisposteDiControllo) { for (let index = 0; index < this.RisposteDiControllo.length; index++) { const element = this.RisposteDiControllo[index].risposta; if (element && element.trigger) { if (element.trigger.posizione == 'body') tmp = richiesta.body[element.trigger.nome]; if (element.trigger.posizione == 'header') tmp = richiesta.headers[element.trigger.nome]; if (element.trigger.posizione == 'query') tmp = richiesta.query[element.trigger.nome]; if (tmp == element.trigger.valore) return element; } } } return undefined; } VerificaPresenzaRispostaControllata(item) { if (this.RisposteDiControllo != undefined) { for (let index = 0; index < this.RisposteDiControllo.length; index++) { const element = this.RisposteDiControllo[index]; if (element.trigger == (item === null || item === void 0 ? void 0 : item.stato)) { return true; } } } return false; } EseguiRispostaControllata(item) { return __awaiter(this, void 0, void 0, function* () { if (this.RisposteDiControllo != undefined) { for (let index = 0; index < this.RisposteDiControllo.length; index++) { const element = this.RisposteDiControllo[index]; if ((element).trigger == (item === null || item === void 0 ? void 0 : item.stato)) { if (element.onModificaRisposta && element) { const tmp = yield element.onModificaRisposta(item); if (tmp) return tmp; else { return (0, utility_1.ConstruisciErrore)('Attenzione errore!'); } } else { return item; } } } } if (item) return item; else { return (0, utility_1.ConstruisciErrore)('Attenzione errore!'); } }); } VerificaTrigger(richiesta) { let tmp = undefined; if (this.RisposteDiControllo) { for (let index = 0; index < this.RisposteDiControllo.length; index++) { const element = this.RisposteDiControllo[index].risposta; if (element && element.trigger) { if (element.trigger.posizione == 'body') tmp = richiesta.body[element.trigger.nome]; if (element.trigger.posizione == 'header') tmp = richiesta.headers[element.trigger.nome]; if (element.trigger.posizione == 'query') tmp = richiesta.query[element.trigger.nome]; if (tmp == element.trigger.valore) return true; } } } return false; } PrintStruttura() { let ritorno = ''; if (this.ListaSanificatori) ritorno = ritorno + '\nListaSanificatori :' + JSON.stringify(this.ListaSanificatori); if (this.RisposteDiControllo) ritorno = ritorno + '\nRisposteDiControllo :' + JSON.stringify(this.RisposteDiControllo); if (this.nomiClasseRiferimento) ritorno = ritorno + '\nnomiClasseRiferimento :' + JSON.stringify(this.nomiClasseRiferimento); if (this.listaHtml) ritorno = ritorno + '\nlistaHtml :' + JSON.stringify(this.listaHtml); return ritorno; } } exports.MetodoVettori = MetodoVettori; //# sourceMappingURL=MetodoVettori.js.map