Skip to content

Commit

Permalink
refactor: echo input params
Browse files Browse the repository at this point in the history
  • Loading branch information
iagapie committed Nov 19, 2024
1 parent 1891db1 commit 9291d32
Showing 2 changed files with 4 additions and 21 deletions.
17 changes: 0 additions & 17 deletions config.go
Original file line number Diff line number Diff line change
@@ -7,21 +7,9 @@ import (
"github.com/danielgtaylor/huma/v2"
"github.com/labstack/echo/v4"
"github.com/labstack/echo/v4/middleware"
"go.uber.org/fx"
"go.uber.org/zap"
)

type MiddlewaresConfig struct {
fx.Out
Recover RecoverConfig `json:"recover,omitempty" yaml:"recover,omitempty"`
BodyLimit BodyLimitConfig `json:"bodyLimit,omitempty" yaml:"bodyLimit,omitempty"`
Compress GzipConfig `json:"compress,omitempty" yaml:"compress,omitempty"`
Secure SecureConfig `json:"secure,omitempty" yaml:"secure,omitempty"`
CORS CORSConfig `json:"cors,omitempty" yaml:"cors,omitempty"`
CSRF CSRFConfig `json:"csrf,omitempty" yaml:"csrf,omitempty"`
Logger RequestLoggerConfig `json:"logger,omitempty" yaml:"logger,omitempty"`
}

type APIConfig struct {
Enabled bool `json:"enabled,omitempty" yaml:"enabled,omitempty"`
Path string `json:"path,omitempty" yaml:"path,omitempty"`
@@ -64,11 +52,6 @@ type RouterConfig struct {
Areas map[string]AreaConfig `json:"areas,omitempty" yaml:"areas,omitempty"`
}

type Config struct {
Middlewares MiddlewaresConfig `json:"middlewares,omitempty" yaml:"middlewares,omitempty"`
Router RouterConfig `json:"router,omitempty" yaml:"router,omitempty"`
}

type SameSiteType string

const (
8 changes: 4 additions & 4 deletions echo.go
Original file line number Diff line number Diff line change
@@ -24,7 +24,7 @@ func CtxArea(ctx context.Context) string {

type EchoParams struct {
fx.In
Config Config
Config RouterConfig
ErrorHandler echo.HTTPErrorHandler
Renderer echo.Renderer
Validator echo.Validator
@@ -74,19 +74,19 @@ func NewEcho(params EchoParams) *echo.Echo {
apiHandlers[key] = append(apiHandlers[key], apiHandler)
}

for _, name := range params.Config.Router.Middlewares.Before {
for _, name := range params.Config.Middlewares.Before {
if middleware, ok := middlewares[name]; ok {
e.Pre(middleware)
}
}

for _, name := range params.Config.Router.Middlewares.After {
for _, name := range params.Config.Middlewares.After {
if middleware, ok := middlewares[name]; ok {
e.Use(middleware)
}
}

for area, cfg := range params.Config.Router.Areas {
for area, cfg := range params.Config.Areas {
if !cfg.Enabled {
continue
}

0 comments on commit 9291d32

Please sign in to comment.