dino-core
Version:
A dependency injection framework for NodeJS applications
65 lines • 2.28 kB
JavaScript
// Copyright 2023 Quirino Brizi [quirino.brizi@gmail.com]
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
Object.defineProperty(exports, "__esModule", { value: true });
exports.EnvironmentConfiguration = void 0;
const helper_1 = require("../helper/helper");
/**
* @class
* @public
* @type EnvironmentConfiguration
*/
class EnvironmentConfiguration {
/**
*
* @param {nconf} nconf the nconf object
* @constructor
*/
constructor(nconf) {
this.nconf = nconf;
}
/**
* Allow to retrieve a value for a particular key
* @param {string} key the to retrieve
* @returns the value associate with the provided key or undefined
*
* @public
*/
get(key) {
if (!key.includes(':')) {
// the key might have been passed with . notation instead of :
key = key.replace('.', ':');
}
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
return helper_1.Helper.getVariable(this.nconf, key, undefined);
}
/**
* Allows to retrieve a value or a provided default value
* @param {string} key the key to retrieve
* @param {any} def the default value
* @returns The value associated with the provided key of the default value
*
* @public
*/
getOrDefault(key, def) {
if (!key.includes(':')) {
// the key might have been passed with . notation instead of :
key = key.replace('.', ':');
}
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
return helper_1.Helper.getVariable(this.nconf, key, def);
}
}
exports.EnvironmentConfiguration = EnvironmentConfiguration;
//# sourceMappingURL=environment.configuration.js.map
;