UNPKG

@vulcan-sql/core

Version:
44 lines 1.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ExtensionBase = void 0; const tslib_1 = require("tslib"); const types_1 = require("../../containers/types"); const inversify_1 = require("inversify"); require("reflect-metadata"); const decorators_1 = require("./decorators"); const utils_1 = require("../../lib/utils"); let ExtensionBase = class ExtensionBase { constructor(config, moduleName) { this.activated = false; this.config = config; this.moduleName = moduleName; } activate() { var _a; return tslib_1.__awaiter(this, void 0, void 0, function* () { if (this.activated) return; yield ((_a = this.onActivate) === null || _a === void 0 ? void 0 : _a.call(this)); this.activated = true; }); } getExtensionId() { return Reflect.getMetadata(decorators_1.EXTENSION_IDENTIFIER_METADATA_KEY, this.constructor); } getConfig() { return this.config; } getLogger() { return (0, utils_1.getLogger)({ scopeName: 'CORE', }); } }; ExtensionBase = tslib_1.__decorate([ (0, inversify_1.injectable)(), tslib_1.__param(0, (0, inversify_1.inject)(types_1.TYPES.ExtensionConfig)), tslib_1.__param(1, (0, inversify_1.inject)(types_1.TYPES.ExtensionName)), tslib_1.__metadata("design:paramtypes", [Object, String]) ], ExtensionBase); exports.ExtensionBase = ExtensionBase; //# sourceMappingURL=base.js.map