diff --git a/database/database.go b/database/database.go index 85af16b..2b8dd19 100644 --- a/database/database.go +++ b/database/database.go @@ -18,7 +18,7 @@ var ( // vspBkt is the main parent bucket of the VSP. All values and other buckets // are nested within it. vspBkt = []byte("vspbkt") - feesBkt = []byte("feesbkt") + ticketsBkt = []byte("ticketsbkt") versionK = []byte("version") backupFile = "backup.kv" version = 1 @@ -41,22 +41,27 @@ func New(dbFile string) (*VspDatabase, error) { return &VspDatabase{db: db}, nil } -// createBuckets creates all storage buckets of the VSP. +// createBuckets creates all storage buckets of the VSP if they don't already +// exist. func createBuckets(db *bolt.DB) error { return db.Update(func(tx *bolt.Tx) error { - pbkt := tx.Bucket(feesBkt) - if pbkt == nil { - pbkt, err := tx.CreateBucket(feesBkt) + if tx.Bucket(vspBkt) == nil { + parentBkt, err := tx.CreateBucket(vspBkt) if err != nil { - return fmt.Errorf("failed to create %s bucket: %v", string(feesBkt), err) + return fmt.Errorf("failed to create %s bucket: %v", string(vspBkt), err) } vbytes := make([]byte, 4) binary.LittleEndian.PutUint32(vbytes, uint32(version)) - err = pbkt.Put(versionK, vbytes) + err = parentBkt.Put(versionK, vbytes) if err != nil { return err } + + _, err = parentBkt.CreateBucket(ticketsBkt) + if err != nil { + return fmt.Errorf("failed to create %s bucket: %v", string(ticketsBkt), err) + } } return nil diff --git a/database/fees.go b/database/tickets.go similarity index 60% rename from database/fees.go rename to database/tickets.go index 627a6e4..26d0d95 100644 --- a/database/fees.go +++ b/database/tickets.go @@ -1,7 +1,7 @@ package database -type Fees struct { - TicketHash string +type Ticket struct { + Hash string CommitmentSignature string FeeAddress string Address string @@ -15,7 +15,7 @@ func (db *VspDatabase) InsertFeeAddressVotingKey(address, votingKey string, vote return nil } -func (db *VspDatabase) InsertFeeAddress() error { +func (db *VspDatabase) InsertFeeAddress(t Ticket) error { return nil } @@ -23,10 +23,10 @@ func (db *VspDatabase) GetInactiveFeeAddresses() ([]string, error) { return []string{""}, nil } -func (db *VspDatabase) GetFeesByFeeAddress(feeAddr string) (Fees, error) { - return Fees{}, nil +func (db *VspDatabase) GetFeesByFeeAddress(feeAddr string) (Ticket, error) { + return Ticket{}, nil } -func (db *VspDatabase) GetFeeAddressByTicketHash() (Fees, error) { - return Fees{}, nil +func (db *VspDatabase) GetFeeAddressByTicketHash() (Ticket, error) { + return Ticket{}, nil }