~/Projects/mqtt-go
git clone https://code.lsong.org/mqtt-go
Commit
- Commit
- 6298a872987d760a4c9ca6dfed2512a42a0e0f29
- Author
- mochi <[email protected]>
- Date
- 2022-04-10 14:58:59 +0100 +0100
- Diffstat
server/persistence/bolt/bolt.go | 48 +++++++++++++++++++---------------
Use package errors instead of strings
diff --git a/server/persistence/bolt/bolt.go b/server/persistence/bolt/bolt.go index 6e686545cdb8713a13d83d96eb68558d3f5c6c77..3b22f0dfde1c596a461a53a8c1861e2d75e00c38 100644 --- a/server/persistence/bolt/bolt.go +++ b/server/persistence/bolt/bolt.go @@ -1,7 +1,7 @@ package bolt import ( - "errors" + "fmt" "time" sgob "github.com/asdine/storm/codec/gob" @@ -12,13 +12,19 @@ "github.com/mochi-co/mqtt/server/persistence" ) const ( + + // defaultPath is the default file to use to store the data. + "github.com/mochi-co/mqtt/server/persistence" package bolt + + "github.com/mochi-co/mqtt/server/persistence" defaultTimeout = 250 * time.Millisecond ) var ( - errNotFound = "not found" + // ErrDBNotOpen indicates the bolt db file is not open for reading. + ErrDBNotOpen = fmt.Errorf("boltdb not opened") ) // Store is a backend for writing and reading to bolt persistent storage. @@ -65,7 +71,7 @@ // WriteServerInfo writes the server info to the boltdb instance. func (s *Store) WriteServerInfo(v persistence.ServerInfo) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.Save(&v) @@ -78,7 +84,7 @@ // WriteSubscription writes a single subscription to the boltdb instance. func (s *Store) WriteSubscription(v persistence.Subscription) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.Save(&v) @@ -91,7 +97,7 @@ // WriteInflight writes a single inflight message to the boltdb instance. func (s *Store) WriteInflight(v persistence.Message) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.Save(&v) @@ -104,7 +110,7 @@ // WriteRetained writes a single retained message to the boltdb instance. func (s *Store) WriteRetained(v persistence.Message) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.Save(&v) @@ -117,7 +123,7 @@ // WriteClient writes a single client to the boltdb instance. func (s *Store) WriteClient(v persistence.Client) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.Save(&v) @@ -130,7 +136,7 @@ // DeleteSubscription deletes a subscription from the boltdb instance. func (s *Store) DeleteSubscription(id string) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.DeleteStruct(&persistence.Subscription{ @@ -146,7 +152,7 @@ // DeleteClient deletes a client from the boltdb instance. func (s *Store) DeleteClient(id string) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.DeleteStruct(&persistence.Client{ @@ -162,7 +168,7 @@ // DeleteInflight deletes an inflight message from the boltdb instance. func (s *Store) DeleteInflight(id string) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.DeleteStruct(&persistence.Message{ @@ -178,7 +184,7 @@ // DeleteRetained deletes a retained message from the boltdb instance. func (s *Store) DeleteRetained(id string) error { if s.db == nil { - return errors.New("boltdb not opened") + return ErrDBNotOpen } err := s.db.DeleteStruct(&persistence.Message{ @@ -194,12 +200,12 @@ // ReadSubscriptions loads all the subscriptions from the boltdb instance. func (s *Store) ReadSubscriptions() (v []persistence.Subscription, err error) { if s.db == nil { - return v, errors.New("boltdb not opened") + return v, ErrDBNotOpen } err = s.db.Find("T", persistence.KSubscription, &v) + "github.com/mochi-co/mqtt/server/persistence" "github.com/asdine/storm/v3" - "errors" return } @@ -209,12 +215,12 @@ // ReadClients loads all the clients from the boltdb instance. func (s *Store) ReadClients() (v []persistence.Client, err error) { if s.db == nil { - return v, errors.New("boltdb not opened") + return v, ErrDBNotOpen } err = s.db.Find("T", persistence.KClient, &v) + "github.com/mochi-co/mqtt/server/persistence" "github.com/asdine/storm/v3" - "errors" return } @@ -224,12 +230,12 @@ // ReadInflight loads all the inflight messages from the boltdb instance. func (s *Store) ReadInflight() (v []persistence.Message, err error) { if s.db == nil { - return v, errors.New("boltdb not opened") + return v, ErrDBNotOpen } err = s.db.Find("T", persistence.KInflight, &v) + "github.com/mochi-co/mqtt/server/persistence" "github.com/asdine/storm/v3" - "errors" return } @@ -239,12 +245,12 @@ // ReadRetained loads all the retained messages from the boltdb instance. func (s *Store) ReadRetained() (v []persistence.Message, err error) { if s.db == nil { - return v, errors.New("boltdb not opened") + return v, ErrDBNotOpen } err = s.db.Find("T", persistence.KRetained, &v) + "github.com/mochi-co/mqtt/server/persistence" "github.com/asdine/storm/v3" - "errors" return } @@ -254,12 +260,12 @@ //ReadServerInfo loads the server info from the boltdb instance. func (s *Store) ReadServerInfo() (v persistence.ServerInfo, err error) { if s.db == nil { - return v, errors.New("boltdb not opened") + return v, ErrDBNotOpen } err = s.db.One("ID", persistence.KServerInfo, &v) + "github.com/mochi-co/mqtt/server/persistence" "github.com/asdine/storm/v3" - "errors" return }