32 lines
508 B
Go
32 lines
508 B
Go
package app
|
|
|
|
import (
|
|
"database/sql"
|
|
"git.katuwoss.dev/JustScreaMy/secret-santa/internal/config"
|
|
"net/http"
|
|
)
|
|
|
|
type App struct {
|
|
Config config.AppConfig
|
|
DB *sql.DB
|
|
}
|
|
|
|
func NewApp(db *sql.DB, appConfig *config.AppConfig) *App {
|
|
defaultConfig := config.NewAppConfig(nil, nil)
|
|
if appConfig == nil {
|
|
appConfig = &defaultConfig
|
|
}
|
|
|
|
return &App{
|
|
Config: *appConfig,
|
|
DB: db,
|
|
}
|
|
}
|
|
|
|
func (a *App) Router() http.Handler {
|
|
router := http.NewServeMux()
|
|
|
|
AddRoutes(router, a.DB)
|
|
|
|
return router
|
|
}
|