Skip to content

Commit bd13f94

Browse files
Refactor to make index an interface and separate out the db and index as
two layers.
1 parent 5072fa7 commit bd13f94

File tree

5 files changed

+716
-658
lines changed

5 files changed

+716
-658
lines changed

cmd/shell/main.go

+8-7
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ import (
3333
"strings"
3434

3535
"github.com/abhinav-upadhyay/brickdb/index"
36+
"github.com/abhinav-upadhyay/brickdb/pkg/brickdb"
3637
)
3738

3839
func main() {
@@ -51,7 +52,7 @@ func main() {
5152
}
5253
}
5354

54-
func openDB(name string) *index.Brickdb {
55+
func openDB(name string) *brickdb.Brickdb {
5556
finfo, err := os.Stat(name)
5657
exists := false
5758
if os.IsNotExist(err) {
@@ -60,16 +61,16 @@ func openDB(name string) *index.Brickdb {
6061
if exists {
6162
exists = !finfo.IsDir()
6263
}
63-
db := index.NewBrick()
64+
db := brickdb.New(name)
6465
if exists {
65-
db.Open(name, os.O_RDWR)
66+
db.Open(os.O_RDWR)
6667
} else {
67-
db.Open(name, os.O_RDWR|os.O_CREATE)
68+
db.Create(index.HashIndexType)
6869
}
6970
return db
7071
}
7172

72-
func executeCmd(db *index.Brickdb, cmdArgs string) bool {
73+
func executeCmd(db *brickdb.Brickdb, cmdArgs string) bool {
7374
args := strings.Split(cmdArgs, " ")
7475
cmd := args[0]
7576
switch cmd {
@@ -80,7 +81,7 @@ func executeCmd(db *index.Brickdb, cmdArgs string) bool {
8081
}
8182
key := args[1]
8283
val := args[2]
83-
err := db.Store(key, val, index.INSERT)
84+
err := db.Store(key, val, brickdb.Insert)
8485
if err != nil {
8586
fmt.Printf("Failed to insert key %s with value %s due to error %v\n", key, val, err)
8687
return false
@@ -92,7 +93,7 @@ func executeCmd(db *index.Brickdb, cmdArgs string) bool {
9293
}
9394
key := args[1]
9495
val := args[2]
95-
err := db.Store(key, val, index.STORE)
96+
err := db.Store(key, val, brickdb.Update)
9697
if err != nil {
9798
fmt.Printf("Failed to update key %s with value %s due to error %v\n", key, val, err)
9899
return false

0 commit comments

Comments
 (0)