| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- 'use strict';
- const BaseService = require('./base');
- const path = require('path');
- const _ = require('lodash');
- const lowdb = require('lowdb');
- const FileSync = require('lowdb/adapters/FileSync');
- const storageKey = require('../const/storageKey');
- const fs = require('fs');
- const os = require('os');
- const pkg = require('../../package.json');
- const storageDir = path.normalize(os.userInfo().homedir + '/' + pkg.name + '/');
- const storageDb = 'db.json';
- class StorageService extends BaseService {
- /*
- * instance
- */
- instance(file = null) {
- if (!file) {
- file = path.normalize(storageDir + storageDb);
- }
- const isExist = fs.existsSync(file);
- if (!isExist) {
- return null;
- }
-
- const adapter = new FileSync(file);
- const db = lowdb(adapter);
-
- return db;
- }
- /*
- * getElectronIPCPort
- */
- getElectronIPCPort() {
- const key = storageKey.ELECTRON_IPC + '.port';
- const port = this.instance()
- .get(key)
- .value();
-
- return port;
- }
- /*
- * getStorageDir
- */
- getStorageDir() {
- return storageDir;
- }
- }
- module.exports = StorageService;
|