noWatch -> hotReload

This commit is contained in:
Bryan Ashby 2020-06-09 21:18:17 -06:00
parent cfaff61abf
commit e674079f53
No known key found for this signature in database
GPG Key ID: B49EB437951D2542
3 changed files with 13 additions and 11 deletions

View File

@ -50,17 +50,17 @@ module.exports = class ArchiveUtil {
}
// singleton access
static getInstance(noWatch = false) {
static getInstance(hotReload = true) {
if(!archiveUtil) {
archiveUtil = new ArchiveUtil();
archiveUtil.init(noWatch);
archiveUtil.init(hotReload);
}
return archiveUtil;
}
init(noWatch = false) {
init(hotReload = true) {
this.reloadConfig();
if(!noWatch) {
if(hotReload) {
Events.on(Events.getSystemEvents().ConfigChanged, () => {
this.reloadConfig();
});

View File

@ -2,10 +2,11 @@
'use strict';
// deps
const paths = require('path');
const fs = require('graceful-fs');
const hjson = require('hjson');
const sane = require('sane');
const paths = require('path');
const fs = require('graceful-fs');
const hjson = require('hjson');
const sane = require('sane');
const _ = require('lodash');
module.exports = new class ConfigCache
{
@ -14,12 +15,13 @@ module.exports = new class ConfigCache
}
getConfigWithOptions(options, cb) {
options.hotReload = _.get(options, 'hotReload', true);
const cached = this.cache.has(options.filePath);
if(options.forceReCache || !cached) {
this.recacheConfigFromFile(options.filePath, (err, config) => {
if(!err && !cached) {
if(!options.noWatch) {
if(options.hotReload) {
const watcher = sane(
paths.dirname(options.filePath),
{

View File

@ -71,7 +71,7 @@ function getConfigPath() {
function initConfig(cb) {
const configPath = getConfigPath();
config.init(configPath, { keepWsc : true, noWatch : true }, cb);
config.init(configPath, { keepWsc : true, hotReload : false }, cb);
}
function initConfigAndDatabases(cb) {
@ -85,7 +85,7 @@ function initConfigAndDatabases(cb) {
},
function initArchiveUtil(callback) {
// ensure we init ArchiveUtil without events
require('../../core/archive_util').getInstance(true); // true=noWatch
require('../../core/archive_util').getInstance(false); // false=hotReload
return callback(null);
}
],