Add logging for settings
This commit is contained in:
parent
0db1380d27
commit
8156517470
1 changed files with 10 additions and 1 deletions
|
|
@ -1,3 +1,4 @@
|
||||||
|
import { Logger } from "src/logger";
|
||||||
import SyncPlugin from "src/plugin";
|
import SyncPlugin from "src/plugin";
|
||||||
|
|
||||||
export interface SyncSettings {
|
export interface SyncSettings {
|
||||||
|
|
@ -20,6 +21,9 @@ export class SettingsContainer {
|
||||||
private onChangeHandlers: Array<(settings: SyncSettings) => void> = [];
|
private onChangeHandlers: Array<(settings: SyncSettings) => void> = [];
|
||||||
|
|
||||||
public constructor(private plugin: SyncPlugin, loadedSettings: any) {
|
public constructor(private plugin: SyncPlugin, loadedSettings: any) {
|
||||||
|
Logger.getInstance().debug(
|
||||||
|
"Loaded settings " + JSON.stringify(loadedSettings, null, 2)
|
||||||
|
);
|
||||||
this._settings = Object.assign({}, DEFAULT_SETTINGS, loadedSettings);
|
this._settings = Object.assign({}, DEFAULT_SETTINGS, loadedSettings);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -42,7 +46,12 @@ export class SettingsContainer {
|
||||||
value: SyncSettings[T]
|
value: SyncSettings[T]
|
||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
this._settings[key] = value;
|
this._settings[key] = value;
|
||||||
await this.plugin.saveData(value);
|
Logger.getInstance().debug(
|
||||||
|
`Setting ${key} to ${value}, new settings: ${JSON.stringify(
|
||||||
|
this._settings
|
||||||
|
)}`
|
||||||
|
);
|
||||||
|
await this.plugin.saveData(this._settings);
|
||||||
this.onChangeHandlers.forEach((handler) => handler(this._settings));
|
this.onChangeHandlers.forEach((handler) => handler(this._settings));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue