UNPKG

vulcain-corejs

Version:
51 lines 2.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const fileConfigurationSource_1 = require("./sources/fileConfigurationSource"); const vulcainConfigurationSource_1 = require("./sources/vulcainConfigurationSource"); const system_1 = require("../globals/system"); /** * Helper for adding configuration source providing by DynamicConfiguration.init */ class ConfigurationSourceBuilder { constructor(_configurationManager) { this._configurationManager = _configurationManager; this._sources = []; this.addVulcainSource(); } addSource(source) { this._sources.push(source); return this; } addVulcainSource() { if (system_1.Service.vulcainServer) { if (!system_1.Service.vulcainToken && !system_1.Service.isTestEnvironment) { system_1.Service.log.info(null, () => "No token defined for reading configuration properties. Vulcain configuration source is ignored."); } else { let uri = `http://${system_1.Service.vulcainServer}/api/configforservice`; let options = { environment: system_1.Service.environment, service: system_1.Service.serviceName, version: system_1.Service.serviceVersion, domain: system_1.Service.domainName }; this.addSource(new vulcainConfigurationSource_1.VulcainConfigurationSource(uri, options)); } } return this; } /*public addRestSource(uri:string) { this.addSource(new HttpConfigurationSource(uri)); return this; }*/ addFileSource(path, mode = fileConfigurationSource_1.ConfigurationDataType.Json) { this._sources.push(new fileConfigurationSource_1.FileConfigurationSource(path, mode)); return this; } startPolling() { return this._configurationManager.startPolling(this._sources); } } exports.ConfigurationSourceBuilder = ConfigurationSourceBuilder; //# sourceMappingURL=configurationSourceBuilder.js.map