jobs-monorepo/api/app/app.go
Elshimy Ziad Magdy Taha 24b5bf1d08 microservices
2025-10-04 17:18:49 +05:00

33 lines
674 B
Go

package app
import (
"database/sql"
"github.com/gorilla/mux"
"github.com/jobs-scraper/api/commands/job"
"github.com/jobs-scraper/internal/ports"
"github.com/jobs-scraper/internal/repo"
"github.com/jobs-scraper/internal/server"
)
type Application struct {
Router *mux.Router
DB *sql.DB
Server *server.AppServer
JobCommands *ports.JobCommands
}
func NewApplication(router *mux.Router, db *sql.DB) *Application {
s := server.NewServer(router)
jobRepo := repo.NewJobRepository(db)
return &Application{
Server: s,
Router: router,
DB: db,
JobCommands: &ports.JobCommands{
CreateJob: job.NewCreateJobHandler(jobRepo),
},
}
}