working on List

This commit is contained in:
bel
2019-06-21 17:13:18 -06:00
parent 6ac77d247e
commit ade973d19d
13 changed files with 178 additions and 2 deletions

View File

@@ -6,6 +6,7 @@ import (
"github.com/syndtr/goleveldb/leveldb"
"github.com/syndtr/goleveldb/leveldb/filter"
"github.com/syndtr/goleveldb/leveldb/opt"
"github.com/syndtr/goleveldb/leveldb/util"
)
type LevelDB struct {
@@ -21,6 +22,18 @@ func NewLevelDB(path string) (*LevelDB, error) {
}, err
}
func (ldb *LevelDB) List(ns []string, limits ...string) ([]string, error) {
keys := []string{}
r := util.BytesPrefix([]byte{})
it := ldb.db.NewIterator(r, nil)
defer it.Release()
for it.Next() {
keys = append(keys, string(it.Key()))
}
err := it.Error()
return keys, err
}
func (ldb *LevelDB) Get(key string, ns ...string) ([]byte, error) {
namespace := resolveNamespace(ns)
snapshot, err := ldb.db.GetSnapshot()