Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InitScheduler ¶
func InitScheduler(deps SchedulerDeps) (*appscheduler.Service, error)
InitScheduler creates and configures the new scheduler service.
func RegisterAllTasks ¶
func RegisterAllTasks(ctx context.Context, svc *scheduler.Service, deps *scheduler.RuntimeDeps) error
RegisterAllTasks registers all discovered scheduled tasks.
Types ¶
type Container ¶
type Container struct {
// HTTP Server
Server *api.Server
// Background services
SchedulerService *appscheduler.Service
TranscodeQueue *transcode.Queue
Services *services.Services
// Use cases (exposed for startup tasks)
UseCases *usecases.UseCases
// Lifecycle manager for server restart
LifecycleMgr *lifecycle.Manager
// contains filtered or unexported fields
}
Container holds all application dependencies
func NewContainer ¶
func NewContainer(db *sql.DB, dbDriver string, cfg *appconfig.Config, logger *slog.Logger) *Container
NewContainer creates and wires up all application dependencies
func (*Container) StartBackgroundServices ¶
StartBackgroundServices starts all background services after the HTTP server is listening. This ensures the UI is accessible even while heavy background tasks (like enrichment pipeline catchup) are running.
type SchedulerDeps ¶
type SchedulerDeps struct {
DB *sql.DB
DBDriver string
Config *appconfig.Config
Cases *usecases.UseCases
Svcs *services.Services
Repos *repositories.Repositories
Logger *slog.Logger
}
SchedulerDeps holds dependencies for scheduler initialization.
Click to show internal directories.
Click to hide internal directories.