diff --git a/internal/server/server.go b/internal/server/server.go index e4c03dcd..36fc0ce1 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -12,6 +12,7 @@ import ( "git.fabledsword.com/bvandeusen/minstrel/internal/auth" "git.fabledsword.com/bvandeusen/minstrel/internal/library" + "git.fabledsword.com/bvandeusen/minstrel/internal/subsonic" ) // ScanTrigger is the subset of the scanner the HTTP handler needs. Kept as an @@ -21,13 +22,14 @@ type ScanTrigger interface { } type Server struct { - Logger *slog.Logger - Pool *pgxpool.Pool - Scanner ScanTrigger + Logger *slog.Logger + Pool *pgxpool.Pool + Scanner ScanTrigger + SubsonicCfg subsonic.Config } -func New(logger *slog.Logger, pool *pgxpool.Pool, scanner ScanTrigger) *Server { - return &Server{Logger: logger, Pool: pool, Scanner: scanner} +func New(logger *slog.Logger, pool *pgxpool.Pool, scanner ScanTrigger, subCfg subsonic.Config) *Server { + return &Server{Logger: logger, Pool: pool, Scanner: scanner, SubsonicCfg: subCfg} } func (s *Server) Router() http.Handler { @@ -46,6 +48,7 @@ func (s *Server) Router() http.Handler { } }) }) + subsonic.Mount(r, s.Pool, s.Logger, s.SubsonicCfg) } return r }