Refactor db init

This commit is contained in:
2024-11-23 22:33:55 +01:00
parent 9f241271a7
commit 9d81b1036d
4 changed files with 26 additions and 22 deletions

View File

@@ -3,7 +3,6 @@ package db
import (
"database/sql"
"fmt"
"novamd/internal/models"
"novamd/internal/secrets"
@@ -95,11 +94,11 @@ var (
// database represents the database connection
type database struct {
*sql.DB
secretsService secrets.Encryptor
secretsService secrets.Service
}
// Init initializes the database connection
func Init(dbPath string, encryptionKey string) (Database, error) {
func Init(dbPath string, secretsService secrets.Service) (Database, error) {
db, err := sql.Open("sqlite3", dbPath)
if err != nil {
return nil, err
@@ -109,21 +108,11 @@ func Init(dbPath string, encryptionKey string) (Database, error) {
return nil, err
}
// Initialize crypto service
secretsService, err := secrets.New(encryptionKey)
if err != nil {
return nil, fmt.Errorf("failed to initialize encryption: %w", err)
}
database := &database{
DB: db,
secretsService: secretsService,
}
if err := database.Migrate(); err != nil {
return nil, err
}
return database, nil
}