filebrowser/backend/storage/bolt/bolt.go

23 lines
788 B
Go
Raw Normal View History

package bolt
import (
"github.com/asdine/storm/v3"
2020-05-31 23:12:36 +00:00
2024-12-17 00:01:55 +00:00
"github.com/gtsteffaniak/filebrowser/backend/auth"
"github.com/gtsteffaniak/filebrowser/backend/settings"
"github.com/gtsteffaniak/filebrowser/backend/share"
"github.com/gtsteffaniak/filebrowser/backend/users"
)
// NewStorage creates a storage.Storage based on Bolt DB.
2024-10-07 22:44:53 +00:00
func NewStorage(db *storm.DB) (*auth.Storage, *users.Storage, *share.Storage, *settings.Storage, error) {
2020-05-31 23:12:36 +00:00
userStore := users.NewStorage(usersBackend{db: db})
shareStore := share.NewStorage(shareBackend{db: db})
settingsStore := settings.NewStorage(settingsBackend{db: db})
2025-01-31 20:26:21 +00:00
authStore, err := auth.NewStorage(authBackend{db: db}, userStore)
if err != nil {
return nil, nil, nil, nil, err
}
2024-10-07 22:44:53 +00:00
return authStore, userStore, shareStore, settingsStore, nil
}