Skip to content

Commit f18cdf5

Browse files
committed
chore: updated libs
1 parent 42c2636 commit f18cdf5

File tree

3 files changed

+41
-29
lines changed

3 files changed

+41
-29
lines changed

lib/client.js

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1+
require('dotenv').config()
2+
13
const grpc = require('@grpc/grpc-js')
24
const empty = require('google-protobuf/google/protobuf/empty_pb');
35

4-
const messages = require('../protos/schema_pb')
5-
const services = require('../protos/schema_grpc_pb')
6+
const messages = require('../proto/schema_pb')
7+
const services = require('../proto/schema_grpc_pb')
68
const util = require('./util')
79
const proofs = require('./proofs')
810
const root = require('./root')
@@ -140,8 +142,7 @@ const useDatabase = (params, callback) => {
140142
err.clientErr = 'Use database error'
141143
return callback(err)
142144
}
143-
// const token = res && res.getToken()
144-
const token = _token
145+
const token = res && res.getToken()
145146
_metadata && _metadata.remove('authorization')
146147
_metadata && _metadata.add('authorization', 'Bearer ' + token)
147148
_activeDatabase = params && params.database
@@ -228,7 +229,7 @@ const listDatabases = (params, callback) => {
228229

229230
const dl = res && res.getDatabasesList()
230231
const l = []
231-
for (let i = 0; i < dl.length; i++) {
232+
for (let i = 0; dl && i < dl.length; i++) {
232233
l.push(dl[i].getDatabasename())
233234
}
234235

@@ -249,7 +250,7 @@ const changePermission = (params, callback) => {
249250

250251
const req = new messages.ChangePermissionRequest()
251252
req.setAction(messages.PermissionAction[params && params.action])
252-
req.setPermission(params && arams.permission)
253+
req.setPermission(params && params.permission)
253254
req.setUsername(params && params.username)
254255
req.setDatabase(params && params.database)
255256

@@ -282,7 +283,7 @@ const listUsers = (params, callback) => {
282283

283284
const ul = res && res.getUsersList()
284285
const l = []
285-
for (let i = 0; i < ul.length; i++) {
286+
for (let i = 0; ul && i < ul.length; i++) {
286287
let u = ul[i]
287288

288289
const pl = u.getPermissionsList()
@@ -420,7 +421,7 @@ const printTree = (params, callback) => {
420421

421422
const result = []
422423
const tl = res && res.getTList()
423-
for (let i = 0; i < tl.length; i++) {
424+
for (let i = 0; tl && i < tl.length; i++) {
424425
let layer = tl[i]
425426

426427
const ll = layer.getLList()
@@ -527,7 +528,7 @@ const scan = (params, callback) => {
527528

528529
const result = []
529530
const il = res && res.getItemsList()
530-
for (let i = 0; i < il.length; i++) {
531+
for (let i = 0; il && i < il.length; i++) {
531532
let item = il[i]
532533
result.push({
533534
key: util.utf8Decode(item.getKey()),
@@ -579,6 +580,9 @@ const history = (params, callback) => {
579580

580581
const req = new messages.HistoryOptions()
581582
req.setKey(util.utf8Encode(params && params.key))
583+
req.setOffset(params && params.offset)
584+
req.setLimit(params && params.limit)
585+
req.setReverse(params && params.reverse)
582586

583587
_client.history(req, _metadata, (err, res) => {
584588
if (err) {
@@ -588,7 +592,7 @@ const history = (params, callback) => {
588592

589593
const result = []
590594
const il = res && res.getItemsList()
591-
for (let i = 0; i < il.length; i++) {
595+
for (let i = 0; il && i < il.length; i++) {
592596
let item = il[i]
593597
result.push({
594598
key: util.utf8Decode(item.getKey()),
@@ -627,7 +631,7 @@ const zScan = (params, callback) => {
627631

628632
const result = []
629633
const il = res && res.getItemsList()
630-
for (let i = 0; i < il.length; i++) {
634+
for (let i = 0; il && i < il.length; i++) {
631635
let item = il[i]
632636
result.push({
633637
key: util.utf8Decode(item.getKey()),
@@ -663,12 +667,12 @@ const iScan = (params, callback) => {
663667

664668
const result = []
665669
const il = res && res.getItemsList()
666-
for (let i = 0; i < il.length; i++) {
670+
for (let i = 0; il && i < il.length; i++) {
667671
let item = il[i]
668672
result.push({
669-
key: util.utf8Decode(item.getKey()),
670-
value: util.utf8Decode(item.getValue()),
671-
index: item.getIndex(),
673+
key: util.utf8Decode(item && item.getKey()),
674+
value: util.utf8Decode(item && item.getValue()),
675+
index: item && item.getIndex(),
672676
})
673677
}
674678

@@ -781,10 +785,10 @@ const setBatch = (params, callback) => {
781785

782786
const req = new messages.KVList()
783787

784-
for (let i = 0; i < params && params.kvList.length; i++) {
788+
for (let i = 0; params && params.keys && i < params.keys.length; i++) {
785789
const kv = new messages.KeyValue()
786-
kv.setKey(util.utf8Encode(params && params.kvList[i].key))
787-
kv.setValue(util.utf8Encode(params && params.kvList[i].value))
790+
kv.setKey(util.utf8Encode(params && params.keys[i].key))
791+
kv.setValue(util.utf8Encode(params && params.keys[i].value))
788792
req.addKvs(kv)
789793
}
790794

@@ -809,9 +813,9 @@ const getBatch = (params, callback) => {
809813
return util.asyncifyMethod(getBatch, params)
810814
}
811815

812-
const key = new messages.Key()
813816
const l = []
814-
for (let i = 0; i < params && params.keys.length; i++) {
817+
for (let i = 0; params && params.keys && i < params.keys.length; i++) {
818+
const key = new messages.Key()
815819
key.setKey(util.utf8Encode(params && params.keys[i].key))
816820
l.push(key)
817821
}
@@ -827,7 +831,7 @@ const getBatch = (params, callback) => {
827831

828832
const result = []
829833
const il = res && res.getItemsList()
830-
for (let i = 0; i < il.length; i++) {
834+
for (let i = 0; il && i < il.length; i++) {
831835
let item = il[i]
832836
result.push({
833837
key: util.utf8Decode(item.getKey()),

lib/root.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
const fs = require('fs')
22
const process = require('process')
33

4-
const messages = require('../protos/schema_pb')
4+
const messages = require('../proto/schema_pb')
55

66
let root = {}
77
let rootPath

lib/util.js

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
1+
const AsyncLock = require('async-lock');
12
const btoa = require('btoa')
23
const util = require('util')
34

5+
var lock = new AsyncLock();
6+
47
const utf8Encode = (val) => {
58
return new util.TextEncoder("utf-8").encode(val)
69
}
@@ -18,14 +21,19 @@ const base64Encode = (val) => {
1821
}
1922

2023
const asyncifyMethod = (method, params) => {
21-
return new Promise((resolve, reject) => {
22-
method(params, (err, res) => {
23-
if (err) {
24-
return reject(err)
25-
}
26-
resolve(res)
24+
const key = method.name
25+
return lock.acquire(key, function() {
26+
return new Promise((resolve, reject) => {
27+
method(params, (err, res) => {
28+
if (err) {
29+
return reject(err)
30+
}
31+
resolve(res)
32+
})
2733
})
28-
})
34+
}).catch(function(err) {
35+
console.log(err.message)
36+
});
2937
}
3038

3139
const equalArray = (a1, a2) => {

0 commit comments

Comments
 (0)