ee-core 1.2.8-beta.2 → 1.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/storage/index.js +7 -7
- package/lib/storage/sqliteStorage.js +2 -20
- package/package.json +2 -2
package/lib/storage/index.js
CHANGED
|
@@ -4,24 +4,24 @@ const assert = require('assert');
|
|
|
4
4
|
const _ = require('lodash');
|
|
5
5
|
const JsonDB = {};
|
|
6
6
|
|
|
7
|
-
JsonDB.connection = function (database,
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
JsonDB.connection = function (database, options = {}) {
|
|
8
|
+
let driver = options.driver || 'lowdb';
|
|
9
|
+
let opt = options.default || {};
|
|
10
|
+
if (!_.includes(['lowdb', 'sqlite'], driver)) {
|
|
11
|
+
assert(database, `db driver ${driver} is not supported`);
|
|
11
12
|
}
|
|
12
13
|
if (_.isEmpty(database)) {
|
|
13
14
|
assert(database, `db name ${database} Cannot be empty`);
|
|
14
15
|
}
|
|
15
16
|
let storage;
|
|
16
|
-
switch (
|
|
17
|
+
switch (driver) {
|
|
17
18
|
case 'lowdb':
|
|
18
19
|
const LowdbStorage = require('./lowdbStorage');
|
|
19
20
|
storage = new LowdbStorage(database);
|
|
20
21
|
break;
|
|
21
22
|
case 'sqlite':
|
|
22
|
-
// todo
|
|
23
23
|
const SqliteStorage = require('./sqliteStorage');
|
|
24
|
-
storage = new SqliteStorage(database);
|
|
24
|
+
storage = new SqliteStorage(database, opt);
|
|
25
25
|
break;
|
|
26
26
|
default:
|
|
27
27
|
}
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
const assert = require('assert');
|
|
4
4
|
const fs = require('fs');
|
|
5
5
|
const path = require('path');
|
|
6
|
-
const constant = require('../constant');
|
|
7
6
|
const Database = require('better-sqlite3');
|
|
8
7
|
const utilsCommon = require('../../utils/common');
|
|
9
8
|
|
|
@@ -13,9 +12,6 @@ class SqliteStorage {
|
|
|
13
12
|
|
|
14
13
|
this.name = name;
|
|
15
14
|
|
|
16
|
-
// 数据库key列表
|
|
17
|
-
this.storageKey = constant.storageKey;
|
|
18
|
-
|
|
19
15
|
const storageDir = utilsCommon.getStorageDir();
|
|
20
16
|
if (!fs.existsSync(storageDir)) {
|
|
21
17
|
utilsCommon.mkdir(storageDir);
|
|
@@ -31,7 +27,6 @@ class SqliteStorage {
|
|
|
31
27
|
initDB (name, opt = {}) {
|
|
32
28
|
let options = Object.assign({
|
|
33
29
|
timeout: 5000,
|
|
34
|
-
verbose: console.log
|
|
35
30
|
}, opt);
|
|
36
31
|
|
|
37
32
|
// 存储类型:db文件、内存(:memory:)
|
|
@@ -40,11 +35,12 @@ class SqliteStorage {
|
|
|
40
35
|
name = this.getFilePath(name);
|
|
41
36
|
isFileDB = true;
|
|
42
37
|
}
|
|
38
|
+
|
|
43
39
|
const db = new Database(name, options);
|
|
44
40
|
|
|
45
41
|
// 如果是文件类型,判断文件是否创建成功
|
|
46
42
|
if (isFileDB) {
|
|
47
|
-
assert(fs.existsSync(
|
|
43
|
+
assert(fs.existsSync(name), `error: storage ${name} not exists`);
|
|
48
44
|
}
|
|
49
45
|
|
|
50
46
|
return db;
|
|
@@ -58,20 +54,6 @@ class SqliteStorage {
|
|
|
58
54
|
const dbFile = path.join(storageDir, name);
|
|
59
55
|
return dbFile;
|
|
60
56
|
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* 为指定的 name 设置一个对应的值
|
|
64
|
-
*/
|
|
65
|
-
setItem (key, value) {
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* 根据指定的名字 name 获取对应的值
|
|
70
|
-
*/
|
|
71
|
-
getItem (key) {
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
|
|
75
57
|
}
|
|
76
58
|
|
|
77
59
|
module.exports = SqliteStorage;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ee-core",
|
|
3
|
-
"version": "1.2.8
|
|
3
|
+
"version": "1.2.8",
|
|
4
4
|
"description": "ee core",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"agentkeepalive": "^4.2.0",
|
|
16
|
+
"better-sqlite3": "^7.6.0",
|
|
16
17
|
"co": "^4.6.0",
|
|
17
18
|
"debug": "^4.3.3",
|
|
18
19
|
"depd": "^2.0.0",
|
|
@@ -37,7 +38,6 @@
|
|
|
37
38
|
"socket.io": "^4.4.1",
|
|
38
39
|
"socket.io-client": "^4.4.1",
|
|
39
40
|
"uglify-js": "^3.14.5",
|
|
40
|
-
"unzip-crx-3": "^0.2.0",
|
|
41
41
|
"urllib": "^2.38.0",
|
|
42
42
|
"utility": "^1.17.0"
|
|
43
43
|
},
|