graphicek/server/app/server.go

37 lines
678 B
Go

package app
import (
"basic-sensor-receiver/config"
"basic-sensor-receiver/database"
"basic-sensor-receiver/services"
"github.com/jmoiron/sqlx"
)
type Server struct {
DB *sqlx.DB
Config *config.Config
Services *services.Services
Integrations *services.Integrations
}
func InitializeServer() *Server {
server := Server{}
server.Config = config.LoadConfig()
db, err := database.Initialize(server.Config.DatabaseUrl)
if err != nil {
panic(err)
}
server.DB = db
ctx := services.Context{DB: server.DB, Config: server.Config}
server.Services = services.InitializeServices(&ctx)
server.Integrations = ctx.Integrations
return &server
}