Skip to content

Commit 5d0f675

Browse files
committed
refactor(config)!: move areas and global middlewares under router
1 parent 3930f34 commit 5d0f675

File tree

4 files changed

+26
-22
lines changed

4 files changed

+26
-22
lines changed

config.go

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,6 @@ import (
1515

1616
type MiddlewaresConfig struct {
1717
fx.Out
18-
Router struct {
19-
Before []string `json:"before,omitempty" yaml:"before,omitempty"`
20-
After []string `json:"after,omitempty" yaml:"after,omitempty"`
21-
} `json:"router,omitempty" yaml:"router,omitempty"`
2218
Recover RecoverConfig `json:"recover,omitempty" yaml:"recover,omitempty"`
2319
BodyLimit BodyLimitConfig `json:"bodyLimit,omitempty" yaml:"bodyLimit,omitempty"`
2420
Compress GzipConfig `json:"compress,omitempty" yaml:"compress,omitempty"`
@@ -63,10 +59,18 @@ type RoleHierarchyConfig struct {
6359
Children []string `json:"children,omitempty" yaml:"children,omitempty"`
6460
}
6561

62+
type RouterConfig struct {
63+
Middlewares struct {
64+
Before []string `json:"before,omitempty" yaml:"before,omitempty"`
65+
After []string `json:"after,omitempty" yaml:"after,omitempty"`
66+
} `json:"middlewares,omitempty" yaml:"middlewares,omitempty"`
67+
Areas map[string]AreaConfig `json:"areas,omitempty" yaml:"areas,omitempty"`
68+
}
69+
6670
type Config struct {
67-
Security rbac.Config `json:"security,omitempty" yaml:"security,omitempty"`
68-
Middlewares MiddlewaresConfig `json:"middlewares,omitempty" yaml:"middlewares,omitempty"`
69-
Areas map[string]AreaConfig `json:"areas,omitempty" yaml:"areas,omitempty"`
71+
Security rbac.Config `json:"security,omitempty" yaml:"security,omitempty"`
72+
Middlewares MiddlewaresConfig `json:"middlewares,omitempty" yaml:"middlewares,omitempty"`
73+
Router RouterConfig `json:"router,omitempty" yaml:"router,omitempty"`
7074
}
7175

7276
type SameSiteType string

echo.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,19 +73,19 @@ func NewEcho(params EchoParams) *echo.Echo {
7373
apiHandlers[key] = append(apiHandlers[key], apiHandler)
7474
}
7575

76-
for _, name := range params.Config.Middlewares.Router.Before {
76+
for _, name := range params.Config.Router.Middlewares.Before {
7777
if middleware, ok := middlewares[name]; ok {
7878
e.Pre(middleware)
7979
}
8080
}
8181

82-
for _, name := range params.Config.Middlewares.Router.After {
82+
for _, name := range params.Config.Router.Middlewares.After {
8383
if middleware, ok := middlewares[name]; ok {
8484
e.Use(middleware)
8585
}
8686
}
8787

88-
for area, cfg := range params.Config.Areas {
88+
for area, cfg := range params.Config.Router.Areas {
8989
if !cfg.Enabled {
9090
continue
9191
}

go.mod

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ require (
2525
github.com/valyala/fasttemplate v1.2.2 // indirect
2626
go.uber.org/dig v1.18.0 // indirect
2727
go.uber.org/multierr v1.11.0 // indirect
28-
golang.org/x/crypto v0.28.0 // indirect
28+
golang.org/x/crypto v0.29.0 // indirect
2929
golang.org/x/net v0.30.0 // indirect
30-
golang.org/x/sys v0.26.0 // indirect
31-
golang.org/x/text v0.19.0 // indirect
32-
golang.org/x/time v0.7.0 // indirect
30+
golang.org/x/sys v0.27.0 // indirect
31+
golang.org/x/text v0.20.0 // indirect
32+
golang.org/x/time v0.8.0 // indirect
3333
gopkg.in/yaml.v3 v3.0.1 // indirect
3434
)

go.sum

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,18 +42,18 @@ go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0=
4242
go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y=
4343
go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8=
4444
go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E=
45-
golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw=
46-
golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U=
45+
golang.org/x/crypto v0.29.0 h1:L5SG1JTTXupVV3n6sUqMTeWbjAyfPwoda2DLX8J8FrQ=
46+
golang.org/x/crypto v0.29.0/go.mod h1:+F4F4N5hv6v38hfeYwTdx20oUvLLc+QfrE9Ax9HtgRg=
4747
golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4=
4848
golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU=
4949
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
5050
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
51-
golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
52-
golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
53-
golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
54-
golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
55-
golang.org/x/time v0.7.0 h1:ntUhktv3OPE6TgYxXWv9vKvUSJyIFJlyohwbkEwPrKQ=
56-
golang.org/x/time v0.7.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
51+
golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s=
52+
golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
53+
golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug=
54+
golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4=
55+
golang.org/x/time v0.8.0 h1:9i3RxcPv3PZnitoVGMPDKZSq1xW1gK1Xy3ArNOGZfEg=
56+
golang.org/x/time v0.8.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
5757
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
5858
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
5959
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=

0 commit comments

Comments
 (0)