UNPKG

silentjs

Version:
43 lines (33 loc) 1.25 kB
// VENDOR LIBS var inherits = require('inherits'); var path = require('path'); var lodash = require('lodash'); // LIBS CORE var filesystem = require('lib-core/filesystem/filesystem'); // FRAMEWORK var Generic = require('silentjs/classes/generic'); var configurationService = require('silentjs/configuration'); var ConfigurationStore = function (config) { var configuration = this; lodash.extend(configuration, config); }; inherits(ConfigurationStore, Generic); ConfigurationStore.prototype.initialize = function () { var configurationsPath = path.join( configurationService.get('rootPath'), this.get('root'), this.getDirectories().configuration ); var configurationFiles = filesystem.getFileNamesIntoPath(configurationsPath); var configuration = this; lodash.each(configurationFiles, function (configurationFile) { lodash.extend(configuration, require(configurationFile)); }); }; ConfigurationStore.prototype.getDirectories = function () { return this.directories; }; ConfigurationStore.prototype.getPath = function (attr) { return path.join(configurationService.get('rootPath'), this.get('root'), this.getDirectories()[attr]); }; module.exports = ConfigurationStore;