mostly finished db pages
This commit is contained in:
parent
c5d41b0965
commit
38f7c31517
10 changed files with 278 additions and 125 deletions
13
pkg/db/db.go
13
pkg/db/db.go
|
|
@ -5,6 +5,7 @@ package db
|
|||
import (
|
||||
"bytes"
|
||||
"errors"
|
||||
"git.giftfish.de/ston1th/gowiki/cache"
|
||||
"github.com/boltdb/bolt"
|
||||
)
|
||||
|
||||
|
|
@ -25,18 +26,14 @@ const (
|
|||
maxSearchResult = 101
|
||||
)
|
||||
|
||||
var (
|
||||
errUserNotExists = dbErr("user does not exist")
|
||||
errUserExists = dbErr("user already exist")
|
||||
)
|
||||
|
||||
func dbErr(i interface{}) error {
|
||||
return fmt.Errorf("db: %s", i)
|
||||
}
|
||||
|
||||
type BoltStore struct {
|
||||
Marshaler
|
||||
db *bolt.DB
|
||||
db *bolt.DB
|
||||
cache *cache.Cache
|
||||
}
|
||||
|
||||
func NewBoltStore() (bs *BoltStore, err error) {
|
||||
|
|
@ -48,14 +45,14 @@ func NewBoltStore() (bs *BoltStore, err error) {
|
|||
if _, err := tx.CreateBucketIfNotExists([]byte(userTable)); err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := tx.CreateBucketIfNotExists([]byte(pagesTable)); err != nil {
|
||||
if _, err := tx.CreateBucketIfNotExists([]byte(pageTable)); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}); err != nil {
|
||||
return
|
||||
}
|
||||
bs = &BoltStore{NewGOB(), db}
|
||||
bs = &BoltStore{NewGOB(), db, cache.NewCache()}
|
||||
if !bs.UserExists(defUser) {
|
||||
err = bs.CreateUser(defUser, defPassword, true)
|
||||
if err != nil {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue