2026-04-26 16:14:31 +09:00
|
|
|
package app
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"net/http"
|
|
|
|
|
|
|
|
|
|
"tutor/internal/config"
|
|
|
|
|
"tutor/internal/httpapi"
|
2026-04-26 16:24:35 +09:00
|
|
|
"tutor/internal/interview"
|
2026-04-26 16:14:31 +09:00
|
|
|
"tutor/internal/workflows"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func NewServer(cfg config.Config) *http.Server {
|
|
|
|
|
runner := workflows.NewStubRunner()
|
2026-04-26 16:24:35 +09:00
|
|
|
store := interview.NewMemoryStore()
|
|
|
|
|
service := interview.NewService(store, runner)
|
|
|
|
|
handler := httpapi.NewHandler(cfg, service)
|
2026-04-26 16:14:31 +09:00
|
|
|
|
|
|
|
|
return &http.Server{
|
|
|
|
|
Addr: cfg.HTTPAddr,
|
|
|
|
|
Handler: handler.Routes(),
|
|
|
|
|
}
|
|
|
|
|
}
|