New
This commit is contained in:
36
internal/domain/upstream/module.go
Normal file
36
internal/domain/upstream/module.go
Normal file
@@ -0,0 +1,36 @@
|
||||
// Filename: internal/domain/upstream/module.go
|
||||
package upstream
|
||||
|
||||
import (
|
||||
"gemini-balancer/internal/models"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
type Module struct {
|
||||
service *Service
|
||||
handler *Handler
|
||||
}
|
||||
|
||||
func NewModule(db *gorm.DB) *Module {
|
||||
service := NewService(db)
|
||||
handler := NewHandler(service)
|
||||
|
||||
return &Module{
|
||||
service: service,
|
||||
handler: handler,
|
||||
}
|
||||
}
|
||||
|
||||
// === 领域暴露的公共API ===
|
||||
|
||||
// SelectActiveWeighted
|
||||
|
||||
func (m *Module) SelectActiveWeighted(upstreams []*models.UpstreamEndpoint) (*models.UpstreamEndpoint, error) {
|
||||
return m.service.SelectActiveWeighted(upstreams)
|
||||
}
|
||||
|
||||
func (m *Module) RegisterRoutes(router *gin.RouterGroup) {
|
||||
m.handler.RegisterRoutes(router)
|
||||
}
|
||||
Reference in New Issue
Block a user