@voicenter-team/mysql-dynamic-cluster
Version:
Galera cluster with implementation of dynamic choose mysql server for queries, caching, hashing it and metrics
31 lines • 1.16 kB
JavaScript
;
/**
* Created by Bohdan on Sep, 2021
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Settings = void 0;
const configs_1 = __importDefault(require("../configs"));
const deepmerge_1 = __importDefault(require("deepmerge"));
const is_plain_object_1 = require("is-plain-object");
class Settings {
/**
* Mix user and pool settings with global
* @param userSettings user settings
*/
static mixSettings(userSettings) {
const overwriteMerge = (destinationArray, sourceArray) => sourceArray;
userSettings = (0, deepmerge_1.default)(configs_1.default.get(), userSettings, {
arrayMerge: overwriteMerge,
isMergeableObject: is_plain_object_1.isPlainObject
});
userSettings.hosts = userSettings.hosts.map(host => {
return (0, deepmerge_1.default)(userSettings.defaultPoolSettings, host);
});
return userSettings;
}
}
exports.Settings = Settings;
//# sourceMappingURL=Settings.js.map