aboutsummaryrefslogtreecommitdiff
path: root/src/runtimeData
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtimeData')
-rw-r--r--src/runtimeData/index.js45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/runtimeData/index.js b/src/runtimeData/index.js
new file mode 100644
index 0000000..8253140
--- /dev/null
+++ b/src/runtimeData/index.js
@@ -0,0 +1,45 @@
+let fse = require("fs-extra");
+
+class RuntimeData {
+
+ constructor (DirUserData) {
+ this.lockFile = DirUserData + "/config/runtime.json";
+ this.runtimeVars = {};
+
+ this.readFile();
+ this.saveFile();
+ };
+
+ saveFile() {
+ fse.outputJsonSync(this.lockFile, this.runtimeVars);
+ }
+
+ readFile() {
+ try {
+ this.runtimeVars = fse.readJsonSync(this.lockFile);
+ } catch (err) {
+ this.runtimeVars = {};
+ }
+ }
+
+ set (name, value) {
+ this.runtimeVars[name] = value;
+ this.saveFile();
+ };
+
+ get (name) {
+ this.readFile();
+ if (typeof (this.runtimeVars[name]) != undefined) {
+ return this.runtimeVars[name];
+ } else {
+ return false;
+ }
+ }
+
+ unset (name) {
+ delete this.runtimeVars[name];
+ }
+
+}
+
+module.exports = RuntimeData;