recommender/internal/handler/http/provider.go
2024-11-07 18:09:13 +08:00

47 lines
1019 B
Go

package http
import (
"github.com/google/wire"
v1 "leafdev.top/Ecosystem/recommender/internal/handler/http/controller/v1"
"leafdev.top/Ecosystem/recommender/internal/handler/http/middleware"
)
var ProviderSet = wire.NewSet(
middleware.NewAuthMiddleware,
middleware.NewGinLoggerMiddleware,
middleware.NewJSONResponseMiddleware,
NewMiddleware,
v1.NewApplicationController,
NewHandler,
)
type Middleware struct {
GinLogger *middleware.GinLoggerMiddleware
Auth *middleware.AuthMiddleware
JSONResponse *middleware.JSONResponseMiddleware
}
func NewMiddleware(
GinLogger *middleware.GinLoggerMiddleware,
Auth *middleware.AuthMiddleware,
JSONResponse *middleware.JSONResponseMiddleware,
) *Middleware {
return &Middleware{
Auth: Auth,
GinLogger: GinLogger,
JSONResponse: JSONResponse,
}
}
type Handlers struct {
Application *v1.ApplicationController
}
func NewHandler(
application *v1.ApplicationController,
) *Handlers {
return &Handlers{
Application: application,
}
}