UNPKG

claire-framework

Version:

- được viết bằng TypeScript - hỗ trợ websocket và HTTP request - hỗ trợ CLI để generate base project (claire-cli)

58 lines 4.39 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()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const __1 = require(".."); const GlobalInjection_1 = require("../system/GlobalInjection"); const core_1 = require("../decorator/core"); const ClaireError_1 = require("../system/ClaireError"); const errors_1 = require("../system/errors"); var SqlProvider; (function (SqlProvider) { SqlProvider["MY_SQL"] = "mysql"; SqlProvider["POSTGRES"] = "postgres"; })(SqlProvider = exports.SqlProvider || (exports.SqlProvider = {})); var NoSqlProvider; (function (NoSqlProvider) { NoSqlProvider["MONGODB"] = "mongodb"; })(NoSqlProvider = exports.NoSqlProvider || (exports.NoSqlProvider = {})); class AbstractDatabaseAdapter { constructor() { //-- check for validity of models this.modelMetadata = []; for (let i = 0; i < this.models.length; i++) { let model = this.models[i]; let metaData = model.prototype[core_1.METADATA]; if (!metaData || !metaData.assertValid) { throw new ClaireError_1.ClaireError(errors_1.INVALID_MODEL_METADATA, model.name); } metaData.assertValid(); this.modelMetadata.push(metaData); } this.modelMetadata = __1.ModelMetadata.dependencySort(this.modelMetadata); this.schemas = {}; this.models.forEach((model) => { this.schemas[model.name] = { modelConnection: undefined }; }); } get models() { return GlobalInjection_1.getGlobalInjection().models.map(m => m.constructorFn); } init() { return __awaiter(this, void 0, void 0, function* () { }); } stop() { return __awaiter(this, void 0, void 0, function* () { }); } } exports.AbstractDatabaseAdapter = AbstractDatabaseAdapter; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3REYXRhYmFzZUFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvZGF0YWJhc2UvQWJzdHJhY3REYXRhYmFzZUFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSwwQkFBaUM7QUFFakMsK0RBQTZEO0FBQzdELDRDQUEyQztBQUMzQyx1REFBa0Q7QUFDbEQsNkNBQXdEO0FBTXhELElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNuQiwrQkFBZ0IsQ0FBQTtJQUNoQixvQ0FBcUIsQ0FBQTtBQUN6QixDQUFDLEVBSFcsV0FBVyxHQUFYLG1CQUFXLEtBQVgsbUJBQVcsUUFHdEI7QUFFRCxJQUFZLGFBRVg7QUFGRCxXQUFZLGFBQWE7SUFDckIsb0NBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQUZXLGFBQWEsR0FBYixxQkFBYSxLQUFiLHFCQUFhLFFBRXhCO0FBRUQsTUFBc0IsdUJBQXVCO0lBS3pDO1FBQ0ksaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN6QyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNCLElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsZUFBUSxDQUFrQixDQUFDO1lBQzFELElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFO2dCQUNwQyxNQUFNLElBQUkseUJBQVcsQ0FBQywrQkFBc0IsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDN0Q7WUFDRCxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDckM7UUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLGlCQUFhLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUMsZUFBZSxFQUFFLFNBQVMsRUFBQyxDQUFDO1FBQzVELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELElBQVcsTUFBTTtRQUNiLE9BQU8sb0NBQWtCLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFNWSxJQUFJOztRQUNqQixDQUFDO0tBQUE7SUFFWSxJQUFJOztRQUNqQixDQUFDO0tBQUE7Q0FFSjtBQXZDRCwwREF1Q0MifQ==